اومنیروت (OmniRoute): گیتوی متنباز برای ۳۳۹ مدل زبانی
اگه از چند تا ابزار agentic (Claude Code، Cursor، Codex، Cline) همزمان استفاده میکنی و خسته شدی از اینکه هر کدوم rate limit جدا داره، یا هر وقت quota یکی تموم میشه مجبوری دستی سوییچ کنی، OmniRoute دقیقاً برای همین مشکل ساخته شده. این یه AI gateway متنباز و local-first است که همهی provider های مختلف (اوپنایآی، آنتروپیک، گوگل، دیپسیک و خیلیهای دیگه) رو پشت یه endpoint واحد و سازگار با API اوپنایآی جمع میکنه.
چیه دقیقاً و چطور کار میکنه
بهجای اینکه هر ابزار کدنویسیت رو جدا به هر provider وصل کنی، فقط یه بار base URL ابزارت (مثلاً Claude Code یا Cursor) رو به یه آدرس local (پیشفرض localhost:20128/v1) اشاره میدی. OmniRoute پشت این آدرس، درخواست رو میگیره، بر اساس قوانین routing که خودت تعریف کردی (یا حالت auto) تصمیم میگیره کدوم provider جواب بده، و پاسخ رو به فرمتی که ابزارت انتظار داره (چه فرمت OpenAI، چه Claude، چه Gemini) برمیگردونه.
نصبش هم سادهست:
npm install -g omniroute
omniroute
بعد از اجرا، هم API و هم یه داشبورد وب رو همون پورت ۲۰۱۲۸ بالا میان.
عدد و رقمهای پروژه
طبق آمار رسمی خود پروژه، OmniRoute از ۱۳ فوریهی ۲۰۲۶ (کمتر از چهار ماه پیش) شروع به کار کرده و در همین مدت کوتاه به بیش از ۲۰ هزار ستارهی گیتهاب، حدود ۲۸۰۰ فورک، و مشارکت بیش از ۳۵۰ توسعهدهنده رسیده؛ با ۲۷۱ نسخهی منتشرشده و بیش از ۴۰۰۰ pull request مرجشده. کل پروژه زیر لایسنس MIT هست، یعنی کاملاً متنباز و بدون محدودیت استفادهی تجاری.
قابلیتهای اصلی
Auto-fallback چندلایه: اگه یه provider به rate limit بخوره یا quota ش تموم بشه، OmniRoute تو چند میلیثانیه، بدون اینکه کارت متوقف بشه، به provider بعدی سوییچ میکنه. این fallback سهلایهست (سطح provider، سطح connection/کلید، سطح مدل)، یعنی یه کلید API خراب کل provider رو از کار نمیندازه.
۱۷ استراتژی routing: از «اول رایگانها رو مصرف کن» گرفته تا «همیشه ارزونترین گزینه» یا «بار رو بین چند کلید پخش کن»، میشه دقیقاً مشخص کرد اولویت routing بر چه اساسی باشه.
فشردهسازی توکن: با ترکیب چند تا موتور فشردهسازی (که خودشون بهش میگن RTK و Caveman)، خروجی ابزارها و context تکراری رو قبل از رسیدن به مدل فشرده میکنه؛ طبق ادعای پروژه، بین ۱۵ تا ۹۵ درصد صرفهجویی تو مصرف توکن، بسته به نوع کار.
استفاده از quota رایگان: پروژه ادعا میکنه بیش از ۹۰ provider با پلن رایگان رو ردیابی میکنه و مصرف رایگان رو بهصورت pool-deduped (بدون شمارش تکراری) جمع میزنه؛ رقمی که خودشون حدود ۱.۵ میلیارد توکن رایگان در ماه اعلام میکنن.
پشتیبانی از MCP و A2A: خود gateway بهعنوان یه سرور MCP هم عمل میکنه (بیش از ۱۰۰ ابزار در قالب چند ده scope)، و از پروتکل A2A هم پشتیبانی میکنه؛ یعنی یه agent میتونه مستقیم خود OmniRoute رو بهعنوان یه ابزار کنترل کنه، نه فقط ازش عبور کنه.
نکتهی مهم قبل از استفادهی جدی
قبل از اینکه این ابزار رو رو یه workflow حساس یا production تکیه بدی، چند تا نکته رو باید در نظر بگیری. اول، مسیر کردن ترافیک از طریق gateway خودت، پردازش، شرایط استفاده، یا نگهداری دادهی provider اصلی رو حذف نمیکنه؛ دادهت هنوز به همون provider (مثلاً OpenAI یا آنتروپیک) میرسه، فقط از یه لایهی اضافه عبور کرده. دوم، این ابزار خودش یه نقطهی حیاتی تو مسیر درخواستهات میشه؛ اگه down بشه، تنظیماتش خراب بشه، یا دیتابیس local ش (SQLite) کرش کنه، همهی ابزارهایی که ازش عبور میکنن تحت تأثیر قرار میگیرن. برای همین، برای استفادهی جدی، حتماً باید persistence، بکآپ، و کنترل دسترسی مناسب رو خودت تنظیم کنی.
یه نکتهی دیگه هم اینه که چون این پروژه خیلی تازه و بهشدت پرتغییره (۲۷۱ نسخه تو کمتر از چهار ماه)، بهتره قبل از هر آپدیت، یه نسخهی مشخص رو pin کنی و رفتار ابزارهای کدنویسیت رو (streaming، tool call، context طولانی) بعد از هر آپدیت جدا تست کنی، نه اینکه فقط بر اساس لیست مدلها قضاوت کنی که همهچیز درست کار میکنه.
جمعبندی
اگه خسته شدی از مدیریت دستی چند تا کلید API و برخورد مکرر با rate limit وسط کار، OmniRoute یه راهحل عملی و رایگانه که با یه دستور نصب میشه و تقریباً با هر ابزار agentic معروفی (Claude Code، Cursor، Codex، Cline، Copilot) سازگاره. ولی برای پروژههای production یا تیمی، بهتره اول یه دورهی ارزیابی جدی (تست کیفیت پاسخ، latency، failover واقعی) قبل از تکیهی کامل روش انجام بدی؛ چون production-ready بودن این ابزار، بیشتر به تنظیمات و تستهای خودت بستگی داره تا صرفاً نصب و راهاندازیش.
