## 💰 حدود 1.62B توکن در ماه از پلنهای رایگان شخص ثالث
> **از حسابهای ارائهدهندگان خودتان استفاده کنید.** این عدد، مجموع تخمینی پلنهای رایگانِ واجد شرایطِ ارائهشده بهصورت جداگانه توسط اشخاص ثالث است، نه سهمیهای از توکن که OmniRoute ارائه کرده باشد. ثبتنام کنید، در صورت نیاز اطلاعات احراز هویت را دریافت کنید و ارائهدهندگانی را که میتوانید استفاده کنید متصل سازید؛ هر ارائهدهنده محدودیتها، دسترسپذیری و شرایط خود را کنترل میکند.
>
> تجمیع دستی پلنهای رایگان دردسرساز است — دهها SDK، دهها محدودیت نرخ و بدون هیچ تصوری از اینکه واقعاً چه مقدار در اختیار دارید. OmniRoute تعداد **467 مورد پلن رایگان را در 34 کلید استخر تکرارشونده** فهرست میکند و رقم اعلامشده توکن را بر اساس **17 استخر دارای بودجه ماهانه مثبت و منتشرشده، بهعلاوه پنج سقف Groq برای هر مدل** محاسبه میکند و استخرهای مشترک را از محاسبه تکراری حذف میکند. سهمیههایی که فقط پس از بررسی هویت منطقهای فعال میشوند (در حال حاضر: ModelScope)، جداگانه نمایش داده میشوند؛ حدود +6M پس از تأیید هویت منطقهای، و هرگز در رقم اصلی جمع نمیشوند. نتیجه در داشبورد (`/dashboard/free-tiers`) قابل مشاهده باقی میماند.
> خلاصه متحرک صفحه زنده `/dashboard/free-tiers`. روششناسی کامل (حذف تکرار استخرها، سطوح اعتباری، شرایط ارائهدهندگان): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**.
>
> این ارقام هر دو هفته یکبار با فهرست زنده دوباره ممیزی میشوند و **در هر دو جهت تغییر میکنند** — اگر ارائهدهندهای پلن رایگان خود را متوقف کند، عدد کاهش مییابد؛ اگر مورد جدیدی اضافه شود، افزایش پیدا میکند. ما همان چیزی را منتشر میکنیم که فهرست واقعاً محاسبه میکند، نه بهترین حالتِ گرد شده به بالا.
⭐ اگر OMNIROUTE به شما در صرفهجویی هزینه و آسانتر شدن کارتان کمک کرده است، به مخزن ستاره بدهید.
[](https://github.com/diegosouzapw/OmniRoute)
[](https://www.star-history.com/diegosouzapw/omniroute)
[](https://olud.ai/project/diegosouzapw-omniroute.html)
### 💬 به جامعه بپیوندید
**👋 نگهدارنده پروژه را دنبال کنید — زودتر از همه از ارائهدهندگان جدید، انتشارها و نکتهها باخبر شوید:**
[](https://www.linkedin.com/in/diegosouzapw/)
[](https://github.com/diegosouzapw)
[](https://discord.gg/U47eFqAXCn)
[](https://t.me/omnirouteOficial)
[](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4)
[](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4)
[](https://omniroute.online)
**پرسشها، نکتههای مربوط به ارائهدهندگان، نقشه راه و پشتیبانی ← [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 جهانی](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 برزیل](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [پرتال](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 دروازه همچنان در حال رشد است
## 🆓 نصب کنید، یک ارائهدهنده متصل کنید، سپس از طریق یک نقطه پایانی مسیریابی کنید
```bash
# پس از اتصال یک ارائهدهنده، کلید OmniRoute خود را از Dashboard → Endpoints کپی کنید:
curl http://localhost:20128/v1/chat/completions \
-H "Authorization: Bearer YOUR_OMNIROUTE_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}'
```
`auto` به یک مسیر واجد شرایط نیاز دارد. ممکن است یک نصب تازه هیچ مقصد واجد شرایطِ بدون کلیدی نداشته باشد و یک ارائهدهنده بدون کلید نیز ممکن است کلاینتهای شخص ثالث را رد کند. ارائهدهندگانی که با `tos: avoid` مشخص شدهاند، از جمله Kiro، بهطور پیشفرض از مسیریابی خودکار کنار گذاشته میشوند؛ اتصال یک حساب این تنظیم را لغو نمیکند. پیش از انتخاب ارائهدهنده، [راهنمای پلنهای رایگان](docs/getting-started/FREE-TIERS-GUIDE.md) را ببینید.📦 اسکریپتهای شروع سریعِ آماده کپی و جایگذاری برای **Python، Node.js، PHP و cURL** ← [`examples/quickstart/`](examples/quickstart/)
# 💥 وعده ما
# 🤔 چرا OmniRoute؟
## 🤝 مورد حمایت دوستان متنباز ما
> **آیا میخواهید به عنوان یک دوست متنباز به ما بپیوندید؟** اینها شرکتهایی هستند که از متنباز حمایت میکنند و به حرکت OmniRoute کمک میکنند — و ما به صورت عمومی اعلام میکنیم که هر توکنی که به ما میدهند به کجا میرود. با ما تماس بگیرید: [diegosouza.pw@outlook.com](mailto: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 سود برساند؟ یک مشکل باز کنید و ما آن را اینجا اضافه خواهیم کرد.
## 🎯 کمبوها — قابلیت پرچمدار
> یک **کمبو** زنجیرهای از مدلهاست که OmniRoute درخواستها را **بهطور خودکار** میان آنها مسیریابی میکند. اگر سهمیه تمام شود، ارائهدهندهای از کار بیفتد یا هزینهها جهش کنند، کمبو میتواند به مدل سالم و واجد شرایط بعدی منتقل شود. 🛡️
### ⚡ بدون نیاز به پیکربندی — فقط از `auto` استفاده کنید
نیازی به ساخت کمبو نیست. مدل خود را روی `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`](docs/routing/AUTO-COMBO.md) مراجعه کنید.
##
### 🧱 تابآوری بهصورت داخلی تعبیه شده است (۳ لایه مستقل)
📖 [موتور Auto-Combo](docs/routing/AUTO-COMBO.md) · [راهنمای تابآوری](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 چه چیزی OmniRoute را متمایز میکند
📊 روششناسی کامل و جزئیات هر ویژگی در مقایسه با 9router، OpenRouter، CLIProxyAPI و LiteLLM ← [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 از OmniRoute حمایت کنید
OmniRoute دارای مجوز MIT است و بهصورت عمومی نگهداری میشود. اگر باعث صرفهجویی در زمان یا هزینه شما شده است، از هر روشی که برایتان مناسب است برای مستقل ماندن آن حمایت کنید. حمایت مالی هرگز بر اولویت مسیریابی تأثیر نمیگذارد؛ این حمایت دیدهشدن را به همراه دارد، نه رتبهبندی را.
**🇧🇷 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
⚠️ هر ارز را فقط از طریق شبکه مشخصشده ارسال کنید — ارسال از طریق شبکه اشتباه ممکن است باعث از دست رفتن دارایی شود.
🐛 باگ پیدا کردهاید یا بازخوردی دارید؟ یک [گفتوگو](https://github.com/diegosouzapw/OmniRoute/discussions) باز کنید.
یادداشتهای توسعهدهنده: این پروژه ممکن است برای راحتی توسعهدهندگان هنگام نصب یا پسنصب با npm، یک فایل محلی .env ایجاد کند. این فایل عمداً از طریق .gitignore نادیده گرفته میشود (.gitignore را ببینید) و هرگز نباید commit شود — اگر بهاشتباه commit شد، تمام اطلاعات محرمانه افشاشده را تغییر دهید و فایل را از تاریخچه حذف کنید. برای راهنمایی درباره مدیریت فایلهای محیطی محلی و اطلاعات محرمانه، به docs/DEVELOPER-ENVIRONMENT.md مراجعه کنید.
## 📡 رادار OmniRoute
عنوان اصلی سطح رایگان همچنان **~1.62B توکن در ماه** از کاتالوگ مستندشده و حذفتکرارشده بر اساس مخزن مشترک در بالا است. اعتبارهای موقت ثبتنام ارائهدهندگان میتوانند بهطور جداگانه میزان ماه اول را به **~2.22B** افزایش دهند. رادار یک لایهٔ اختیاری و امضاشده برای کاتالوگ است که برای افرادی طراحی شده که میخواهند در فاصلهٔ میان انتشار نسخههای OmniRoute، اطلاعات بهروزتری دربارهٔ دسترسپذیری مدلهای رایگان داشته باشند؛ کاتالوگ جامعه و تمام قابلیتهای رایگان موجود همچنان رایگان باقی میمانند.
حامیان میتوانند کاتالوگ زنده و فرصتهای بیشتری از ارائهدهندگان دریافت کنند. سقف جداگانه و متغیر آن، بسته به دسترسپذیری ارائهدهندگان، **حداکثر تقریباً 3B توکن در ماه** است. این سقف تضمینشده نیست: ارائهدهندگان ممکن است سهمیهها، شرایط احراز صلاحیت، مدلها یا مناطق را در هر زمان تغییر دهند.
رادار نیازمند فعالسازی اختیاری است و فقط از GET استفاده میکند. کلاینت OmniRoute هیچیک از اعلانها، ترافیک، پیکربندی ارائهدهنده، تلهمتری استفاده یا وضعیت محلی رد کردن اعلانها را آپلود نمیکند. برای آگاهی از شرایط احراز صلاحیت و کاتالوگ فعلی، به **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)** مراجعه کنید.
## ✨ تازهها
> مهمترین تغییرات اخیر از **v3.8.20 → v3.8.52**. تاریخچهٔ کامل در [`CHANGELOG.md`](CHANGELOG.md).
- **⚖️ مسیریابی `quota-weighted`** — بیستمین راهبرد ترکیبی، حسابهایی را که سهمیهشان تمام شده است کنار میگذارد و سپس از میان حسابهای باقیمانده، متناسب با سهمیهٔ باقیمانده ÷ بار در حال پردازش انتخاب میکند؛ در عین حال، مکالمات موجود را به همان حساب متصل نگه میدارد. → [ترکیب خودکار](docs/routing/AUTO-COMBO.md)
- **🧰 حالت بدون رابط کاربری** — `omniroute serve --headless` (یا `OMNIROUTE_HEADLESS=1`) فقط موتور پراکسی `/v1/*` را اجرا میکند و داشبورد و زیرسامانههای مختص داشبورد را غیرفعال نگه میدارد. → [حالت بدون رابط کاربری](docs/guides/HEADLESS.md)
- **🔎 کشف مدل** — `/v1/models` مدلها را بر اساس قابلیت، زمینه، نوع و متن فیلتر میکند و `POST /v1/models/query` نیز با همان سطح مشاهدهپذیری برای هر کلید، فهرستی کوتاه و قطعی برمیگرداند. → [مرجع API](docs/reference/API_REFERENCE.md)
- **🔑 کنترل مسیریابی برای هر کلید** — با `forcedModel` یک کلید API را به یک مدل یا ترکیب مشخص متصل کنید و مدلها و ترکیبهای یک کلید را بهصورت اتمی اضافه یا حذف کنید (`/api/keys/{id}/access`). → [مرجع API](docs/reference/API_REFERENCE.md) · [OpenAPI](docs/openapi.yaml)
- **🛡️ کنترلهای دقیقتر PII** — انتخاب بر اساس نوع، حداکثر ۲۰ الگوی سفارشی اعتبارسنجیشده برای پوشاندن اطلاعات و شمارندههای تشخیص برای هر نوع؛ خودِ پوشاندن اطلاعات همچنان نیازمند فعالسازی صریح است. → [محافظها](docs/security/GUARDRAILS.md)
- **🌍 ۶۷ زبان** — داشبورد، نسخههای آینهای مستندات و CLI، با `npm run i18n:add-locale` که تنها با یک فرمان، زبانی را در همهجا اضافه میکند. → [راهنمای i18n](docs/guides/I18N.md)
- **🎛️ OmniConductor** — واگذاری ورودی A2A به ناوگان عاملهای شما، مهارتهای Conductor در کارت عامل و پنل داشبوردی با گفتوگوی صوتی فشاری Faro. → [سرور A2A](docs/frameworks/A2A-SERVER.md)
- **🛂 پذیرش تطبیقی و محافظت در برابر اضافهبار** — درخواستهای سنگین گفتوگو بهجای دریافت خطای 503 در صف قرار میگیرند و برای هر اتصال، اجارههای چرخشی و اتمی RPM اعمال میشود. → [راهنمای تابآوری](docs/architecture/RESILIENCE_GUIDE.md)
- **🗂️ ترتیب استاندارد `/v1/models`** — برای هر ارائهدهنده یک بلوک پیوسته و گروهبندیشده وجود دارد (ترکیبها ابتدا ثابت میشوند) که در تمام منابع کاتالوگ پایدار است. → [مرجع API](docs/reference/API_REFERENCE.md)
- **🗜️ مقاومسازی فشردهسازی** — محافظ افزایش حجم که بهطور پیشفرض فعال است، بستههای Caveman برای DE / FR / JA و چینی (wényán)، و فیلترهای RTK برای Gradle و .NET. → [فشردهسازی](docs/compression/COMPRESSION_ENGINES.md)
- **💸 هزینهٔ صادقانه برای تعرفههای ثابت** — هزینهٔ ارائهدهندگان اشتراکی / طرحهای برنامهنویسی در تحلیل هزینه **$0** نمایش داده میشود؛ برآورد بودجه، سهمیه و مسیریابی همچنان ادامه دارد. → [مرجع API](docs/reference/API_REFERENCE.md)
- **⚖️ مسیریابی Quota-Share** — سهمیهٔ یک حساب مشترک را منصفانه میان کلیدهای تجمیعشده تقسیم میکند و با حفظ بهرهوری، سهمهای بلااستفاده را موقتاً به دیگران میدهد. → [راهنمای تابآوری](docs/architecture/RESILIENCE_GUIDE.md)
- **🤖 راهاندازی CLI/عامل با یک فرمان** — ۱۵ فرمان ثبتشدهٔ `setup-*`؛ `omniroute run` هفت CLI را اجرا میکند (Claude Code، Codex، Aider، Goose، OpenCode، Qwen Code، Gemini CLI)؛ `omniroute configure` نیز از ۱۱ مقصد، انتخابگر تعاملی ارائهدهنده+مدل و موارد دلخواه برای هر زمینه پشتیبانی میکند. → [یکپارچهسازیهای CLI](docs/guides/CLI-INTEGRATIONS.md)
- **🛰️ حالت راه دور** — یک OmniRoute راه دور را با توکنهای دارای دامنهٔ محدود (`connect` / `contexts` / `tokens`) بههمراه ابزار کمکی OAuth به نام `antigravity` برای نصبهای VPS کنترل کنید. → [حالت راه دور](docs/guides/REMOTE-MODE.md)
- **🧭 مسیریابی خودکار هوشمندتر** — ترکیبهای `auto/:`، **Fusion** (پنل مدل + داور)، مسیریابی آگاه از وظیفه و بازنویسی مدل / حالت / بودجهٔ دلاری برای هر درخواست. → [ترکیب خودکار](docs/routing/AUTO-COMBO.md)
- **🗜️ فشردهسازی قابلافزونه** — ۱۲ موتور ترکیبپذیر بههمراه Compression Studios: LLMLingua-2، Ultra دومرحلهای، omniglyph، دروازهٔ وفاداری برای هر مرحله، GCF v3.2 و ویرایشگر مرتبسازی با کشیدن و رها کردن. → [فشردهسازی](docs/compression/COMPRESSION_ENGINES.md)
- **🕵️ رمزگشایی شفاف MITM (TPROXY)** — رهگیری CLIهایی که متغیرهای محیطی پراکسی را نادیده میگیرند، با CA مجزا برای هر SNI و نصبکنندهٔ مخزن اعتماد. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md)
- **💸 تلهمتری هزینه در همهجا** — سرآیندهای هزینه/مصرف `X-OmniRoute-*` در تمام نقاط پایانی، سرآیند صرفهجویی ناشی از اصابت کش و سهمیههای هزینهٔ دلاری برای هر کلید. → [مرجع API](docs/reference/API_REFERENCE.md)
- **🧠 حافظهای تحت کنترل شما** — بهطور پیشفرض غیرفعال است؛ کوانتیزهسازی برداری int8 و زوال نوعدار با فعالسازی صریح، و `x-omniroute-no-memory` برای هر درخواست. → [حافظه](docs/frameworks/MEMORY.md)
- **🛡️ امنیت** — محافظ تزریق پرامپت در تمام مسیرهای LLM (مجموعهٔ آزمون تیم قرمز)، محافظ اختیاری پوشاندن اطلاعات احراز هویت (کلیدهای API/اسرار افشاشده را در هر دو جهت حذف میکند)، جستوجوی وب رایگان DuckDuckGo بهعنوان آخرین راهکار، و دروازهٔ ورود اختیاری OIDC برای داشبورد (ورود با گذرواژه همیشه در دسترس میماند). → [محافظها](docs/security/GUARDRAILS.md)
- **🖼️ نقاط پایانی جدید** — `/v1/ocr` (Mistral OCR) و `/v1/audio/translations` (به سبک Whisper) سطح قابلیتهای رسانهای را تکمیل میکنند. → [مرجع API](docs/reference/API_REFERENCE.md)
- **🎨 تولید تصویر / ویدئو / صدا** — یک API واحد برای رسانه: xAI Grok Imagine و ویدئوی Novita AI، ComfyUI، Magnific، Adobe Firefly، Segmind و ارائهدهندگان گفتار مانند ElevenLabs. → [مرجع API](docs/reference/API_REFERENCE.md)
- **🌍 استقرار و عملیات** — `basePath` برای پراکسی معکوس، تشخیص خودکار زبان مرورگر، ردیابی دستگاه برای هر کلید، اعتماد MITM بدون نیاز به کاربر root و بومیسازی zh-TW. → [محیط](docs/reference/ENVIRONMENT.md)
- **🤝 ارائهدهندگان و عاملهای بیشتر** — عاملهای ابری (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… و یک **کاتالوگ بهروزشده با ۳۷۵ ارائهدهنده**. → [ارائهدهندگان](docs/reference/PROVIDER_REFERENCE.md)
- **📡 شفافیت مسیریابی** — هر پاسخ دارای سرآیند `X-OmniRoute-Decision` است که راهبرد/ارائهدهنده/تأخیر ارائهدهندهٔ پاسخ را مشخص میکند؛ راهبرد ترکیبی جدید `cache-optimized` بههمراه عامل `cacheAffinity` در Auto-Combo، درخواستهای تکراری را به اتصالی هدایت میکند که پیشوند کششده را در اختیار دارد؛ و نقطهٔ پایانی فقطخواندنی `/v1/auto-combo/{channel}/candidates`، مجموعهٔ زندهٔ نامزدهای یک کانال `auto/*` را نمایش میدهد. → [ترکیب خودکار](docs/routing/AUTO-COMBO.md)
- **⚡ عملکرد و زیرساخت محلی** — Redis محلی با راهاندازی تککلیکی، استقراردهندههای رله برای Cloudflare Workers / Deno Deploy، و Bifrost و Mux بهعنوان سرویسهای تعبیهشده تحت نظارت. → [سرویسهای تعبیهشده](docs/frameworks/EMBEDDED-SERVICES.md)
- **🧩 امکانات دیگر موجود در بسته** — چارچوب افزونه + بازارچه، چارچوبهای مهارت Omni/Agent/GitHub، یکپارچهسازی مخزن Obsidian (با 22 ابزار MCP)، APIهای Batch و Files سازگار با OpenAI، کش معنایی پاسخ، بازیوارسازی با جدولهای رتبهبندی، کشف عامل ACP (با 15 عامل داخلی)، خروجیگیری زمانبندیشده گزارشها به BigQuery، توزیع موازی چندمدلی `auto/chaos`، پل ربات Telegram، مدیر نسخه درونبرنامهای و رتبهبندی ارائهدهندگان رایگان LMArena-ELO. → [مستندات](docs/README.md)
## 🤖 رابطهای خط فرمان و عاملهای کدنویسی سازگار
> یک پیکربندی — `http://localhost:20128/v1` — و **هر** IDE یا رابط خط فرمان هوش مصنوعی با مدلهای رایگان و کمهزینه اجرا میشود.
+ همچنین با این موارد کار میکند · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · هر ابزار سازگار با OpenAI
📖 راهاندازی اختصاصی هر ابزار برای هر 37 ابزار (27 ابزار CLI کدنویسی + 10 عامل CLI) ← [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 افزونه OpenCode ← [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)
**هر CLI پشتیبانیشده را تنها با یک فرمان از طریق OmniRoute اجرا کنید** — بدون نوشتن فایل پیکربندی،
اعتبارنامهها برای هر فرایند تزریق میشوند و Qwen/Gemini یک پوشه خانگی موقت و ایزوله دریافت میکنند:
```bash
omniroute run claude --model openai/gpt-5.4 # Claude Code
omniroute run codex --model glm/glm-5.2 # OpenAI Codex CLI
omniroute run aider --model glm/glm-5.2 -- --message "reply OK"
omniroute run goose --model glm/glm-5.2
omniroute run opencode --model glm/glm-5.2 -- run "reply OK"
omniroute run qwen --model glm/glm-5.2 -- -p "reply OK"
omniroute run gemini --model glm/glm-5.2 -- --skip-trust -p "reply OK"
# یا ارائهدهنده و مدل را بهصورت تعاملی انتخاب کنید و پیکربندی اختصاصی ابزار را بنویسید:
omniroute configure codex # همچنین: claude opencode qwen aider goose gemini cline continue kilo 5dive
```
هر فرمان از زمینه راهدور فعال (`omniroute connect `) پیروی میکند، `--dry-run`
متغیرهای محیطی/آرگومانهای دقیق را بدون اجرا پیشنمایش میکند و `--api-key-env NAME` اسرار را از
تاریخچه پوسته شما دور نگه میدارد. ← [یکپارچهسازیهای CLI](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 375 ارائهدهنده هوش مصنوعی — 153 مورد با برچسب رایگان در کاتالوگ
> **375 ارائهدهنده ثبتشده** در مجموعههای مرجع چت، رسانه، جستوجو، محلی، عامل ابری و سیستم، شامل **153 مورد دارای فراداده اکتشافی `hasFree: true`**. رجیستری مدلهای چت شامل **239 ارائهدهنده / 3,059 جفت متمایز ارائهدهنده-مدل / 1,475 شناسه خام مدل** است؛ کاتالوگ مجزای بودجه رایگان نیز دارای **467 ردیف بهازای هر مدل**، **34 مخزن دورهای** و **52 ارائهدهنده رایگان همیشگیِ دورهای/بدون نیاز به کلید** است. این مخرجها عامدانه متفاوتاند؛ تعریفها و محاسبات با حذف موارد تکراری مخزن در [مرجع ارائهدهندگان](docs/reference/PROVIDER_REFERENCE.md) و [سطوح رایگان](docs/reference/FREE_TIERS.md) آمدهاند.
### 🏢 همه آزمایشگاههای بزرگ — از طریق یک نقطه پایانی
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)
### 🆓 رایگان برای همیشه — $0، بدون نیاز به کارت
OpenCode Zen DeepSeek V4، Nemotron 3 بدون محدودیت توکن
Kilo Code مسیریاب خودکار، Tencent Hy3 برای همیشه رایگان
### 🧩 جدید: OmniRoute درون Copilot Chat بومی VS Code
> نه نوار کناری جدیدی در کار است و نه رابط گفتوگوی تازهای — هر مدلی که OmniRoute ارائه میکند، مستقیماً در
> **انتخابگر مدل Copilot Chat که از قبل استفاده میکنید** نمایش داده میشود. از VS Code 1.122 به بعد، مدلهای ارائهدهندگان
> بدون ورود به GitHub یا اشتراک Copilot کار میکنند — حالت عامل، فراخوانی ابزار و بینایی،
> رایگان.
افزونه **[OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** را نصب کنید و آن را
به سرور OmniRoute خود متصل کنید (پیشفرض `localhost:20128` است)، سپس Copilot Chat ← انتخابگر مدل
← **مدیریت مدلها…** ← **OmniRoute** را باز کنید.
از داخل ویرایشگر: نمای **افزونهها** را باز کنید، **«OmniRoute»** را جستوجو کنید و روی **نصب**
کلیک کنید — در هر دو فروشگاه به یک شکل کار میکند. کد منبع، مشکلات و راهنمای انتشار در
[diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot) قرار دارند.
📖 [راهنمای VS Code Copilot Chat](docs/guides/VSCODE-COPILOT.md) — راهاندازی، آنچه انتخابگر نمایش میدهد، داشبورد در یک زبانه، عیبیابی
> `omniroute serve` وقتی همیشه روشن باشد، بهترین عملکرد را دارد. **[OmniRouteTray](https://github.com/zoispag/omniroute-tray)**
> آن را به یک برنامه نوار منوی «تنظیم کن و فراموش کن» برای macOS تبدیل میکند: سرور را راهاندازی میکند، پس از
> راهاندازی مجدد سیستم فعال نگهش میدارد، آن را درجا بهروزرسانی میکند و بودجه زنده توکن شما را با یک کلیک در دسترس قرار میدهد — **بدون
> باز ماندن پنجره ترمینال و بدون نیاز به مراقبت از `npm install -g omniroute`.**
این برنامه با [Tauri v2](https://v2.tauri.app/) ساخته شده است (هستهای مبتنی بر Rust که اندازهاش تقریباً قابل چشمپوشی است)،
محیط اجرای امضاشده Node 24 خودش را ارائه میکند و نصب OmniRoute متعلق به برنامه را مدیریت میکند؛ بنابراین هرگز با
`node`/`bun` سراسری شما تداخل ندارد. این برنامه **از پیکربندی و پایگاه داده موجود شما در `~/.omniroute/` استفاده میکند** — پس همان
OmniRouteای است که از قبل اجرا میکنید، فقط این بار کلاه به سر دارد. 🎩
چه کاری انجام میدهد
چگونه
🟢 بر سرور نظارت میکند
omniroute serve را اجرا میکند و بهجای ایجاد نمونهای تکراری، نمونه از قبل در حال اجرا را بهکار میگیرد
📊 نمای کلی از مصرف زنده
نوارهای سهمیه ارائهدهندگان، محدودیتهای جلسهای/هفتگی Claude همراه با شمارش معکوس بازنشانی، تفکیک هزینه ۳۰روزه
🔄 بهروزرسانی خودکار درجا
نصب مرحلهای، جابهجایی اتمی، بازگشت در صورت شکست — همیشه روی جدیدترین نسخه
🚀 اجرا هنگام ورود
اجرای اختیاری هنگام ورود؛ فقط در سینی، بدون نماد در Dock
🩺 بررسی سلامت و گزارشها
عیبیابی با یک کلیک و دسترسی به گزارشهای سرور
```sh
brew install --cask zoispag/tap/omniroute-tray
```
دانلود را ترجیح میدهید؟ جدیدترین فایل .dmg را از
Releases دریافت کنید. کد منبع، مشکلات و مستندات
ساخت در zoispag/omniroute-tray قرار دارند.
💛 پروژهای اجتماعی توسط @zoispag — و نه یک نسخهٔ رسمی OmniRoute.
> فراتر از سرور، OmniRoute یک **مرکز کنترل کامل خط فرمان** با **بیش از 80 فرمان** است و در کنار آن، پروتکلهای باز عامل را ارائه میدهد تا یک عامل هوش مصنوعی بتواند **بهطور مستقل** آن را کنترل کند.
### ⌨️ یک رابط خط فرمان واقعی (نه فقط `start`)
```bash
omniroute # اجرای درگاه + داشبورد (پورت 20128)
omniroute chat # کلاینت گفتوگوی تعاملی TUI (دستورهای اسلش: /model /combo /skill /memory)
omniroute setup # راهانداز هدایتشده برای نخستین اجرا
omniroute doctor # عیبیابی ارائهدهندگان، پورتها و وابستگیهای بومی
```
### 🛰️ حالت راه دور — رابط خط فرمان را اینجا و OmniRoute را روی یک VPS اجرا کنید
OmniRoute روی یک سرور است؟ آن را از لپتاپ خود با **همان رابط خط فرمان** کنترل کنید. کافی است یکبار
با یک توکن دسترسی دارای دامنه وارد شوید؛ پس از آن، همه فرمانها سرور راه دور را هدف میگیرند.
```bash
omniroute connect 192.168.0.15 # گذرواژه ← توکن دارای دامنه، ذخیرهشده بهعنوان یک زمینه
omniroute models # ← روی سرور راه دور اجرا میشود
omniroute configure codex # ← یک مدل راه دور را انتخاب و یک پروفایل محلی Codex ایجاد میکند
omniroute tokens create --name ci --scope read # ایجاد توکنهایی با دسترسی محدودتر برای دستگاههای دیگر
omniroute contexts use default # ← بازگشت به سرور محلی
```
توکنها دارای دامنههای `read` / `write` / `admin` هستند؛ مسیرهایی که فرایند اجرا میکنند، فقط به loopback محدود میمانند.
📖 [حالت راه دور](docs/guides/REMOTE-MODE.md)
### 🤝 یک عامل متصل کنید — تا خود OmniRoute را کنترل کند
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
کنترل یک نمونه راه دور با توکنهای دسترسی دارای دامنه
```bash
# ارائه مجموعه کامل ابزارهای OmniRoute به Claude Code از طریق MCP:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream
```
📖 [سرور MCP](docs/frameworks/MCP-SERVER.md) · [سرور A2A](docs/frameworks/A2A-SERVER.md) · [پروتکلهای عامل](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ صرفهجویی خودکار ۱۵ تا ۹۵ درصدی در توکنها
### 📖 نحوه کار — خط لوله، معماری و محاسبات صرفهجویی
ترکیب انباشته پیشفرض، `RTK → Caveman` را اجرا میکند. وقتی هر دو روی یک محتوای ابزار/زمینه اعمال شوند، صرفهجوییها بهصورت مرکب محاسبه میشوند:
```txt
combined = 1 − (1 − RTK) × (1 − Caveman_input)
average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2%
range = 78.4 – 94.6%
```
بلوکهای کد، URLها، JSON و دادههای ساختاریافته توسط موتور حفظ محتوا **همیشه محافظت میشوند**.
> **وقتی چند توکن کار را راه میاندازند، چرا از توکنهای زیادی استفاده کنیم؟** هر درخواست بهشکل **شفاف** از خط لوله فشردهسازی OmniRoute عبور میکند — بدون نیاز به تغییر در کلاینت. اکنون این خط لوله **پشتهای از ۱۲ موتور ترکیبپذیر** است که بهترتیب اجرا میشوند و برای هر ترکیب مسیریابی قابل ترکیب و تطبیق هستند — با تکیه بر ایدههایی از [RTK](https://github.com/rtk-ai/rtk)، [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ بیش از 90K)، [LLMLingua-2](https://github.com/microsoft/LLMLingua) و [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR).
### 🧱 پشته ۱۲ موتوره
موتورها بهترتیب خط لوله اجرا میشوند؛ هرکدام را میتوان بهطور مستقل برای هر ترکیب فعال یا غیرفعال و پیکربندی کرد:
#
موتور
کارکرد
1
Session-Dedup
محتوای تکرارشده میان نوبتها را حذف میکند (محتوامحور، بیننوبتی)
2
CCR
بلوکهای بزرگ را پشت نشانگرهای بازیابی بایگانی میکند تا در صورت نیاز دریافت شوند
3
Lite
حذف فضای خالی اضافی و کوتاهسازی URL تصاویر (خط مبنای سبک از نظر تأخیر)
4
RTK
فیلتر هوشمند نتایج ابزار، حذف موارد تکراری و کوتاهسازی (با آگاهی از فرمان)
5
Responses Tool Output
فشردهسازی JSON با اولویت حفظ بدون اتلاف، بههمراه فشردهسازی تشخیصی محدود برای خروجیهای پوسته/وصله/جستوجو/ساخت (Responses API)
6
Headroom
فشردهسازی جدولی بدون اتلاف آرایههای JSON (حدود ۳۰٪) از طریق کُدک داخلی GCF
7
Relevance
امتیازدهی استخراجی جملهها نسبت به آخرین پرسش کاربر
8
Caveman
فشردهسازی متن مبتنی بر قواعد (حدود ۶۵ تا ۷۵٪ در خروجی)
9
Aggressive
خلاصهسازی و کهنهسازی تدریجی نوبتهای قدیمی
10
LLMLingua-2
هرس معنایی مبتنی بر یادگیری ماشین از طریق MobileBERT ONNX — ایمن برای کد و ناهمگام
11
Ultra
هرس اکتشافی توکنها با یک لایه اختیاری مدل کوچک (SLM)
12
OmniGlyph
رمزگذاری آزمایشی زمینه بهصورت تصویر برای Claude Fable 5 اندازهگیریشده روی اتصال مستقیم Anthropic؛ مبدلهای GPT 5.6 تا زمان دریافت رسیدهای ارائهدهنده در حالت بسته در برابر خطا باقی میمانند. چهار نمایه فشردهسازی (پیشفرض تهاجمی، متعادل، ایمن برای کدنویسی و عبور بدون تغییر) (تهاجمیترین؛ با فعالسازی اختیاری)
بلوکهای کد، URLها و دادههای ساختاریافته **همیشه** بهصورت بایتبهبایت و بدون تغییر حفظ میشوند. **تنظیمات آماده تککلیکی** موتورها را با هم ترکیب میکنند:
حالت
صرفهجویی
بهترین کاربرد
🪶 Lite
~۱۵٪
پیشفرض ایمن و همیشهفعال
🪨 Standard (Caveman)
~۳۰٪
کدنویسی روزمره
⚡ Aggressive
~۵۰٪
نشستهای طولانی با استفاده زیاد از ابزارها
🔥 Ultra
~۷۵٪
حداکثر صرفهجویی
🧰 RTK
۶۰–۹۰٪
خروجی پوسته/آزمایش/ساخت/git
🔗 Stacked (RTK → Caveman)
۷۸–۹۵٪
پرامپتهای ترکیبی و گزارشهای ابزار
**نمونه واقعی — حالت Standard:**
> **قبل (۶۹ توکن):** _"دلیل رندر مجدد کامپوننت React شما احتمالاً این است که در هر چرخه رندر، یک ارجاع شیء جدید ایجاد میکنید. وقتی یک شیء درونخطی را بهعنوان prop ارسال میکنید، مقایسه سطحی React هر بار آن را شیئی متفاوت تشخیص میدهد و این موضوع باعث رندر مجدد میشود. توصیه میکنم برای ذخیرهسازی شیء از useMemo استفاده کنید."_
>
> **بعد (۱۹ توکن):** _"در هر رندر، ارجاع شیء جدید. prop شیء درونخطی = ارجاع جدید = رندر مجدد. آن را در useMemo قرار دهید."_
>
> **همان پاسخ. ۷۲٪ توکن کمتر. بدون هیچ افت دقتی.** ✅
**نمونه PT-BR — حالت [Troglodita](https://github.com/leninejunior/troglodita):**
> **قبل (42 توکن):** _"مشکل این است که کامپوننت دوباره رندر میشود، چون در هر چرخهٔ رندر یک ارجاع جدید به شیء ایجاد میشود. پیشنهاد میکنم از useMemo استفاده کنید."_
>
> **بعد (12 توکن):** _"رندر مجدد: ارجاع جدید در هر چرخه (بازسازی شیء درونخطی). استفاده از `useMemo`."_
>
> **همان پاسخ. حدود 70٪ توکن کمتر. دقت فنی دستنخورده.** ✅
### 🎚️ فراتر از موتورها — سبکهای خروجی، تنظیمگر تطبیقی و کنترل در سطح هر درخواست
۱۲ موتور بالا حجم آنچه را **وارد میشود** کاهش میدهند. سه لایهٔ دیگر تعیین میکنند خروجی **چگونه**، **چه زمانی** و به چه شکلی **خارج شود**:
- **🪄 سبکهای خروجی** _(هدایت در محور خروجی)_ — دستورالعملهای قطعی و سازگار با کش را برای شکلدهی پاسخ تزریق میکند؛ قابلترکیب هستند و هرکدام شدت `lite` / `full` / `ultra` دارند. افزودن یک سبک تنها به یک ورودی تکخطی در رجیستری نیاز دارد:
- **نثر موجز** — حذف حشو، حروف تعریف و تردیدگویی؛ حفظ دقیق محتوای فنی.
- **کد کمتر** — رویکرد YAGNI یک «توسعهدهندهٔ ارشد کمکار»: کوچکترین تغییر عملی، بدون زیرساختسازیِ درخواستنشده.
- **Ponytail (توسعهدهندهٔ ارشد کمکار)** — پیمودن نردبان YAGNI، رفع علت ریشهای و ارائهٔ کوچکترین diff عملی.
- **من ADHD دارم (اقداممحور)** — شروع با اقدام بعدی، مراحل شمارهگذاریشده، یک گام بعدی مشخص و بدون مقدمه.
- **CJK موجز (文言)** — سبک فوقموجز چینی کلاسیک (محدود به locale برابر با `zh`).
- **🎯 بودجهٔ تطبیقی context** _(تنظیمگر)_ — بهجای یک آستانهٔ روشن/خاموش برای توکن، ارزانترین موتورهایی را که کمترین اتلاف را دارند فقط تا حد لازم فعال میکند تا محتوا **در پنجرهٔ context مدل جا شود**. سیاست: `reserve-output` (پیشفرض، آگاه از مدل) · `percentage` · `absolute`. حالت: `floor` (تضمین جا شدن) · `replace-autotrigger` (انتخاب صریح شما اولویت دارد) · `off` (آستانهٔ قدیمی).
- **🎛️ محل تصمیمگیری دربارهٔ فشردهسازی** _(ترتیب تقدم، از زیاد به کم)_ — هدر `x-omniroute-compression` در سطح هر درخواست › بازنویسی ترکیب مسیریابی › پروفایل نامگذاریشدهٔ فعال › تطبیقی / فعالسازی خودکار › پیشفرض پنل › خاموش. طرح اعمالشده در هدر پاسخ `X-OmniRoute-Compression: ; source=` بازگردانده میشود.
فعالسازی خودکار براساس آستانهٔ توکن، روشنکردن تنظیمگر تطبیقی، ثابتکردن یک پروفایل نامگذاریشده، تنظیم موردی برای هر درخواست یا تخصیص یک pipeline به هر ترکیب مسیریابی — هرکدام که با بار کاری سازگارتر است. یک **ابزار ارزیابی** آفلاین و اختیاری (`npm run eval:compression`) پیش از انتشار تغییر، وفاداری را در برابر میزان صرفهجویی روی یک مجموعهدادهٔ ثابت امتیازدهی میکند.
📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ شروع سریع
**1) نصب و اجرا**
```bash
npm install -g omniroute
omniroute
```
> 💡 پیام `npm warn ERESOLVE` یا هشدارهای peer-dep را میبینید؟ [بیضرر هستند](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated).
> **از npm 11 یا جدیدتر استفاده میکنید؟** ممکن است npm اسکریپتهای چرخهٔ عمر package را مسدود کند، مگر اینکه مجاز شده باشند. اجرای `postinstall` مربوط به OmniRoute (`node scripts/build/postinstall.mjs`) برای آمادهسازی فایلهای runtime بومی آن ضروری است. هنگام نصب سراسری، packageهای نامبردهشده در هشدار npm را مجاز کنید. برای مجموعهٔ package گزارششده توسط OmniRoute 3.8.51:
>
> ```bash
> npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute
> ```
>
> برای استفادهٔ مجدد از این فهرست مجاز در نصبهای سراسری آینده، آن را یکبار پیکربندی کنید و سپس بهصورت عادی نصب کنید:
>
> ```bash
> npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user
> npm install -g omniroute
> ```
>
> فهرست وابستگیها ممکن است بین نسخهها تغییر کند؛ اگر npm فهرست متفاوتی گزارش داد، از نام packageهای همان هشدار استفاده کنید. مجازکردن یک package به اسکریپتهای نصب آن اجازهٔ اجرا میدهد.
> **از Gemini Web یا ارائهدهندهٔ دیگری مبتنی بر cookie وب استفاده میکنید؟** package مربوط به npm شامل
> Playwright است، اما باینری Chromium آن را شامل نمیشود. پیش از ارسال نخستین درخواست به ارائهدهندهٔ وب، یادداشت
> [راهاندازی Chromium برای Playwright](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium)
> را ببینید.
داشبورد در `http://localhost:20128` · API در `http://localhost:20128/v1`.
**2) یک ارائهدهندهٔ واجد شرایط را با حساب خود متصل کنید**
داشبورد ← **ارائهدهندگان** ← ارائهدهندهای را انتخاب کنید که شرایط و سهمیهٔ فعلی آن با مورد استفادهٔ شما سازگار است ← کلید API آن را اضافه کنید یا فرایند حسابش را تکمیل کنید. طرحهای رایگان ممکن است به ثبتنام، تأیید یا روش پرداخت نیاز داشته باشند. [راهنمای طرحهای رایگان](docs/getting-started/FREE-TIERS-GUIDE.md) را بررسی کنید؛ دسترسی بدون کلید تضمین نمیشود و ارائهدهندگانی که با `tos: avoid` علامتگذاری شدهاند، بهطور پیشفرض از `auto` کنار گذاشته میشوند.
**3) ابزار کدنویسی خود را تنظیم کنید**
```txt
نشانی پایه: http://localhost:20128/v1
کلید API: [از داشبورد ← نقاط پایانی کپی کنید]
مدل: auto (مسیریابی میان اتصالهای واجد شرایط — یا ارائهدهنده/مدل را انتخاب کنید)
```
**4) از کارکرد آن مطمئن شوید**
```bash
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```
باید مدلهای متصلشدهٔ خود را در فهرست ببینید. 🎉 تمام شد — کدنویسی را شروع کنید؛ OmniRoute بهصورت خودکار برایتان مسیریابی میکند و در صورت نیاز به گزینهٔ جایگزین میرود.
اگر کلاینت شما نمیتواند هدرهای سفارشی ارسال کند، OmniRoute نامهای مستعار سازگاریِ توکندار را نیز ارائه میدهد:
```txt
کاتالوگ OpenAI: http://localhost:20128/vscode/YOUR_KEY/
مدلهای OpenAI: http://localhost:20128/vscode/YOUR_KEY/models
گفتوگوی OpenAI: http://localhost:20128/vscode/YOUR_KEY/chat/completions
پاسخهای OpenAI: http://localhost:20128/vscode/YOUR_KEY/responses
گفتوگوی Ollama: http://localhost:20128/vscode/YOUR_KEY/api/chat
برچسبهای Ollama: http://localhost:20128/vscode/YOUR_KEY/api/tags
```
این موارد را فقط برای کلاینتهایی استفاده کنید که نمیتوانند `Authorization: Bearer ...` را پیوست کنند. احراز هویت با هدر همچنان روش ترجیحی است.
## 📦 روشهای بیشتر نصب — Docker، کد منبع، pnpm، Arch
**🐳 Docker**
```bash
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
```
`:latest` بالاترین نسخهٔ پایدار SemVer **منتشرشده** را دنبال میکند. این برچسب git `main` را دنبال نمیکند. برای GitOps، نسخه را روی `:X.Y.Z` ثابت کنید. به [کانالهای انتشار Docker](docs/guides/DOCKER_GUIDE.md#release-channels) مراجعه کنید. ایمیج مقدار **`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 |
```bash
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-e OMNIROUTE_MEMORY_MB=8192 --memory=10g \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
```
جدول کامل: [راهنمای Docker — RAM زمان اجرا](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents).
> **کانال پیشانتشار Docker:** برچسبهای `diegosouzapw/omniroute:next` و
> `diegosouzapw/omniroute:next-web` شاخهٔ پیشفرض فعلی `release/v*` را
> دنبال میکنند. این برچسبهای تغییرپذیر فقط برای آزمایش اصلاحات منتشرنشده در نظر گرفته شدهاند و
> **برای محیط production پشتیبانی نمیشوند**. به
> [کانالهای انتشار Docker](docs/guides/DOCKER_GUIDE.md#release-channels) مراجعه کنید.
**🥟 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 .`).
```bash
# نصب و اجرا با Bun
bun install
bun run dev
```
**🛠️ از کد منبع**
```bash
cp .env.example .env && npm install
PORT=20128 npm run dev
```
**📦 pnpm**
```bash
pnpm add -g omniroute@latest --allow-build=better-sqlite3 --allow-build=@swc/core && omniroute
```
**🐧 Arch Linux (AUR)**
```bash
yay -S omniroute-bin && systemctl --user enable --now omniroute.service
```
**🔧 Nix (Flake)**
```bash
# استفاده از Nix flakes
nix develop
npm run dev
# یا استفاده از devbox
devbox run npm run dev
```
📖 [راهنمای Docker](docs/guides/DOCKER_GUIDE.md) — پروفایلهای Compose، Caddy HTTPS و tunnelهای Cloudflare.
**🦭 Podman**
```bash
# ۱. دایرکتوری دادهٔ 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` صرفنظر کنید و
[راهنمای دایرکتوری داده متناسب با توپولوژی](contrib/podman/README.md#data-directory-permissions-by-topology) را دنبال کنید.
📖 [راهنمای Podman](contrib/podman/README.md) — ساختهای Compose، Podman Machine و
راهاندازی Quadlet در Linux/systemd.
**⚡ نصب سریعتر / سبکتر (صرفنظر از build بومی)**
موتور بومی SQLite (`better-sqlite3`) یک وابستگی **اختیاری** است؛ بنابراین نصب سراسری
هرگز منتظر کامپایل از کد منبع نمیماند: اگر binary ازپیشساختهشدهای با
پلتفرم/Node شما سازگار باشد، از آن استفاده میکند و در غیر این صورت، بهطور شفاف به یک موتور pure-JS
(`node:sqlite` در Node 22+، و در غیر این صورت `sql.js` WASM همراه بسته) بازمیگردد — بدون نیاز به ابزارهای build.
برای صرفنظر کامل از آمادهسازی بومی پس از نصب (در CI، محیطهای headless یا دستگاههای کند):
```bash
OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 نیز از آن صرفنظر میکند
```
برای سریعترین نصبها، **pnpm** را ترجیح دهید (ذخیرهسازی content-addressed + لینکهای سخت — بخش بالا را ببینید).
برای runtime بدون داشبورد و headless، از پروفایل Docker با نام `base` (در بالا) یا
[راهنمای Termux](docs/guides/TERMUX_GUIDE.md) استفاده کنید. CLI و داشبورد وب توسط
همان پردازش و روی یک پورت ارائه میشوند؛ بنابراین در حال حاضر بستهٔ جداگانهای فقط برای CLI وجود ندارد.
راهبرد پوشش آزمون برای بیش از ۵۶٬۰۰۰ اعلان آزمون ایستا در بیش از ۷٬۸۰۰ فایل آزمون ردیابیشده
# ⭐ مشارکتکنندگان برتر
> OmniRoute بهدست جامعهای پرشور از متنباز شکل گرفته است. این افراد مشارکتهای استثناییای داشتهاند که مستقیماً بر کیفیت، پایداری و دامنهٔ دسترسی پروژه تأثیر میگذارد. **سپاسگزاریم.**
### مشارکتکنندگان خارجی بر اساس درخواستهای کشش ادغامشده
این سرشماری در 2026-10-18 15:09:09 UTC و با آخرین وضعیت زندهٔ release/v3.8.52 در 656f01cb43 انجام شده است. سرشماری صفحهبندیشدهٔ GitHub GraphQL شامل 9,191 درخواست کشش ادغامشده است: 3,834 مورد توسط مالک مخزن، 229 مورد توسط Dependabot، 6 مورد توسط سایر رباتها/برنامهها و 5,122 PR خارجی از 835 مشارکتکنندهٔ متمایز. «خطوط تغییریافته» برابر با مجموع افزودهها و حذفهای GitHub است و فایلهای تولیدشده، lockfileها، کاتالوگها، ترجمهها و مستندات را نیز شامل میشود؛ این مقدار حجم تغییرات است، نه LOC تألیفشده. برای 49 PR، تفاوتهای گزارششدهٔ GitHub بیش از 500,000 خط است (برای نمونه، #13399 که تنها یک ارائهدهنده را اضافه میکند، 2,347 فایل تغییریافته را فهرست میکند) و این موضوع چندین مجموع بالا را افزایش داده است. رتبهٔ موارد مساوی یکسان در نظر گرفته شده است.
### commitهای منتسبشده توسط GitHub
بازبینی مجدد در 2026-10-18 14:44:45 UTC: کامیتهای منتسب به GitHub که توسط API مشارکتکنندگان مخزن برای شاخهٔ پیشفرض release/v3.8.52 گزارش شدهاند. API تعداد 849 هویت (429 کاربر، 2 ربات و 418 ناشناس) را برگرداند؛ این جدول نگهدارنده، رباتها و هویتهای ناشناس را حذف میکند و رتبههای مساوی را حفظ میکند. این جدول هم با رتبهبندی درخواستهای ادغامشدهٔ بالا و هم با سرشماری فرادادهٔ Git در پایین متفاوت است.
> 🙏 قابلیتها، رفع اشکالها و بهبودهای زیرساختی این مشارکتکنندگان، **بخشی اساسی** از عواملی هستند که OmniRoute را قابلاعتماد و غنی از امکانات میسازند. هر درخواست ادغام، هر مورد آزمایشی و هر فایل ترجمهٔ i18n اهمیت دارد. متنباز به دست افرادی مانند آنها ساخته میشود.
---
## 💖 حامیان مالی
سپاسی صمیمانه از کسانی که هزینههای OmniRoute را از جیب خود تأمین میکنند — هر مشارکت کمک میکند پروژه رایگان، مستقل و پویا باقی بماند.
… و دیگرانی که ترجیح میدهند ناشناس بمانند 💛حامیان عمومی GitHub در تاریخ 2026-10-18 از طریق GitHub Sponsors GraphQL API دوباره اعتبارسنجی شدند: 11 حمایت مالی عمومی (6 فعال و 5 پیشین) از مجموع 14 مورد. وضعیت isActive در GitHub برچسبهای فعال بالا را تعیین میکند؛ همچنان از حامیان عمومی پیشین با پرداخت یکباره قدردانی میشود و حامیان خصوصی ناشناس باقی میمانند. کمکهای مالی Ko-fi، Buy Me a Coffee، Liberapay، PIX و رمزارزی فهرست نشدهاند، زیرا سابقهٔ عمومی حامی ندارند.💖 حامی مالی شوید ← — هر دلار کمک میکند OmniRoute رایگان و مستقل باقی بماند.
## 👥 بیش از 900 مشارکتکننده
[](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)
در تاریخ 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 نفر را به دست میدهد؛ بنابراین این افزایش ناشی از مشارکتکنندگان جدید است، نه استفاده از روشی آسانگیرانهتر.
### نحوهٔ مشارکت
1. از مخزن یک انشعاب (Fork) ایجاد کنید
2. از نوک **فعال** `release/vX.Y.Z` شاخه بسازید (نه از `main`) — به [مدل شاخهبندی و انتشار](docs/ops/BRANCHING_MODEL.md) مراجعه کنید
3. شاخهٔ قابلیت خود را ایجاد کنید (`git checkout -b feat/amazing-feature`)
4. تغییرات خود را کامیت کنید (`git commit -m 'feat: add amazing feature'`)
5. تغییرات را به شاخه ارسال کنید (`git push origin feat/amazing-feature`)
6. یک Pull Request با **base = همان شاخهٔ `release/vX.Y.Z`** باز کنید
برای دستورالعملهای دقیق، به [CONTRIBUTING.md](CONTRIBUTING.md) مراجعه کنید.
### انتشار یک نسخهٔ جدید
```bash
# ایجاد یک انتشار — انتشار در npm بهصورت خودکار انجام میشود
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes
```
## 📊 ستارهها
## 🌍 StarMapper
## 🙏 قدردانیها
OmniRoute بر شانههای غولها ایستاده است. این پروژه کار خود را بهعنوان یک فورک از **[9router](https://github.com/decolua/9router)** و یک پورت TypeScript از پروژه Go یعنی **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** آغاز کرد — و از آنجا به بعد، هر زیرسامانهای که در ادامه آمده، از یک پروژه متنباز الهام گرفته است که پیشتر این مسیر را پیموده بود. هرکدام از آنها بخش مشخصی از OmniRoute را شکل دادهاند. این قدردانی ما از همه آنهاست. 🙏
> ⭐ تعداد ستارهها در 18 اکتبر 2026 از طریق REST API گیتهاب تأیید شده است — شما هم به این پروژهها ستاره بدهید. این تعداد، تصویری دقیق و مربوط به تاریخی مشخص است و طبیعتاً تغییر خواهد کرد.
### 🧬 تبار و دروازه
دروازه هوش مصنوعیای که مجموعهداده عمومی قیمتگذاری آن، همگامسازی ردیابی هزینه ما را تغذیه میکند و مدل نرمالسازی ارائهدهندگان آن بر مسیریابی ما تأثیر گذاشته است.
الگوهایی که به بازیابی جریان، نامهای مستعار بدون تفکر، جستوجوی وب جایگزین، محدودیتهای پنجره لغزان، حذف اطلاعات حساس از گزارشها و جریانهای مقاومسازیشده راهانداز منتقل شدهاند.
نگاشتهای مدل Grok، مولد Statsig مبتنی بر TypeError جعلی، پیشفرضهای درخواست و دستگاه، و پردازشگر پاسخ NDJSON آن بهطور اساسی در اجراکننده Grok Web در OmniRoute اقتباس شدهاند.
منبع انتقالیافتهای که grok2api-merged برای لایه مخزن پراکسی خود از آن نام برده است؛ OmniRoute این اشاره به تبار را حفظ میکند، اما ادعایی درباره پورت مخزن پراکسی در اجراکننده محدود Grok Web خود ندارد.
پیادهسازی اولیه Grok Web از طراحی بالادستی HTTP/مرورگر آن بهره گرفته است؛ مسیر مستقیم HTTP آن از GrokProxy مشتق میشود، بنابراین ادعایی درباره پورت مستقل کد وجود ندارد.
پروژهٔ وایرال «چرا توکن زیاد استفاده وقتی توکن کم کار راهاندازد» — فلسفهٔ غارنشینی آن، حالت فشردهسازی استاندارد ما و بیش از ۳۰ قاعدهٔ حذف حشو/تلخیص را قدرت میبخشد.
مهارت کدنویسی YAGNI وایرالِ «توسعهدهندهٔ ارشد تنبل» — الهامبخش سبک خروجی کد کمتر ما بود: هدایت بهسوی کوچکترین تغییر کارآمد که حجم کد _تولیدشده_ را کاهش میدهد (همتای محور خروجیِ نثر موجز Caveman).
فشردهسازی خروجی آگاه از محتوا و مختص هر نوع فایل، همراه با انصراف آگاه از شکست — مسیریابی مختص هر نوع و صرفنظر در صورت سود حداقلی ما را اعتبارسنجی کرد.
JSON ستونی مبتنی بر Rust، بازیابی مبتنی بر آدرسدهی محتوا و حذف موارد تکراری میان پیامها — طراحی موتور headroom/ccr/session-dedup و اصل تغییرناپذیرِ سازگار با کشِ «فرم فشرده مستقل از موقعیت است» را اعتبارسنجی کرد.
رهگیری/تحلیل MITM ترافیک میان دستیار کدنویسی ↔ LLM، الزامات اولیه بازرس ترافیک را شکل داد. چهار ماژول پیشتر اقتباسشده — ادغام SSE، نرمالسازی مکالمه، پوشاندن اطلاعات محرمانه و پاکسازی هدرها — با پیادهسازیهای مستقل اتاق پاک مبتنی بر استانداردهای عمومی پروتکل جایگزین شدهاند. دو سطح عبور مستقیم میزبان (passthrough.ts و _internal/bypass.cjs) همچنان پیادهسازیهای داخلی OmniRoute هستند که بهطور مستقل طبقهبندی شدهاند؛ آنها در چارچوب این جایگزینی بازنویسی نشدند.
مسیریابی شفاف پراکسی بهازای هر فرایند — الهامبخش برچیدن ایمن MITM در هنگام خرابی، مهلتهای عدم فعالیت سوکت، انتساب فرایند از طریق /proc و دریافت ترافیک با TPROXY بود.
فهرستی گزینششده از کتابخانههای امن بهصورت پیشفرض که انتخابهای امنیتی ما را هدایت میکند (Helmet.js، DOMPurify، ssrf-req-filter، safe-regex، Google Tink).