منصوبے کے بارے میں

# routatic-proxy ایک Go CLI پراکسی جو آپ کو [Claude Code](https://docs.anthropic.com/en/docs/claude-code) کی درخواستوں کو متعدد اپ اسٹریم فراہم کنندگان کے ذریعے خودکار ماڈل انتخاب اور فارمیٹ تبدیلی کے ساتھ روٹ کرنے دیتی ہے۔ `routatic-proxy` Claude Code اور آپ کے منتخب کردہ فراہم کنندگان کے درمیان بیٹھتی ہے، Anthropic API کی درخواستوں کو روکتی ہے، انہیں مناسب فارمیٹ (OpenAI، Anthropic، Responses، یا Gemini) میں تبدیل کرتی ہے، اور اپ اسٹریم آگے بھیجتی ہے۔ Claude Code سمجھتا ہے کہ وہ Anthropic سے بات کر رہا ہے — لیکن آپ کی درخواستیں ان ماڈلز اور فراہم کنندگان تک جاتی ہیں جو آپ کنفیگر کرتے ہیں۔ `oc-go-cc` ایک مطابقت پذیری کے عرف کے طور پر دستیاب رہتا ہے، اور موجودہ `OC_GO_CC_*` ماحولیاتی متغیرات اور `~/.config/oc-go-cc/config.json` فائلیں اب بھی تسلیم کی جاتی ہیں۔ ## معاون فراہم کنندگان | فراہم کنندہ | تفصیل | بہترین برائے | |----------|-------------|----------| | **OpenCode Go** | فلیٹ ریٹ قیمتوں کے ساتھ اعلیٰ کارکردگی والے اوپن سورس کوڈنگ ماڈلز | روزانہ کوڈنگ، پیچیدہ استدلال، کم لاگت والے کام | | **OpenCode Zen** | منتخب اور آزمودہ ماڈلز بمعہ پے ایز یو گو قیمتوں کے | متعدد API کیز کے بغیر Claude/GPT/Gemini تک رسائی | | **AWS Bedrock** | آپ کے اپنے AWS انفراسٹرکچر پر انٹرپرائز گریڈ ماڈلز | ڈیٹا خودمختاری اور تعمیل کی ضرورت والے انٹرپرائزز | | **OpenRouter** | خودکار فیل اوور کے ساتھ 100+ LLMs کے لیے متحد API | متعدد فراہم کنندگان کے ماڈلز کے ساتھ تجربہ | | **Anthropic** | anthropic-first فیل اوور موڈ کے ساتھ مقامی Claude ماڈلز | OpenCode فال بیک کے ساتھ Claude-first ورک فلوز | ## خصوصیات - **ملٹی پرووائیڈر** — ایک ہی کنفگ سے OpenCode Go، OpenCode Zen، AWS Bedrock، یا OpenRouter کے ذریعے روٹ کریں - **شفاف پراکسی** — Claude Code Anthropic فارمیٹ کی درخواستیں بھیجتا ہے، پراکسی فراہم کنندہ کے مقامی فارمیٹ میں اور واپس تبدیل کرتی ہے - **ماڈل روٹنگ** — سیاق و سباق (ڈیفالٹ، سوچ، طویل سیاق، پس منظر) کی بنیاد پر خودکار طور پر مختلف ماڈلز پر روٹ کرتی ہے - **اسٹریمنگ منظر نامہ روٹنگ** — اسٹریمنگ درخواستوں کے لیے قابل ترتیب روٹنگ - **فال بیک چینز** — اگر کوئی ماڈل ناکام ہو جائے، تو خودکار طور پر آپ کی کنفیگر کردہ چین میں اگلا آزماتی ہے - **Anthropic-First فیل اوور** — Claude کو Anthropic پر رکھیں اور OpenCode صرف ریٹ لمٹس یا آؤٹیجز کے دوران استعمال کریں - **سرکٹ بریکر** — ماڈل کی صحت کو ٹریک کرتا ہے اور ناکام ماڈلز کو چھوڑ دیتا ہے تاکہ تاخیر میں اضافے سے بچا جا سکے - **ریئل ٹائم اسٹریمنگ** — لائیو فارمیٹ تبدیلی کے ساتھ مکمل SSE اسٹریمنگ - **ٹول کالنگ** — مناسب Anthropic tool_use/tool_result ↔ OpenAI/Gemini فنکشن کالنگ ترجمہ - **ہاٹ ری لوڈ** — کنفگ فائل میں تبدیلیوں کی نگرانی کریں اور خودکار طور پر دوبارہ لوڈ کریں - **سیلف اپ ڈیٹ** — ایک کمانڈ سے تازہ ترین ریلیز چیک اور انسٹال کریں ## GUI ورژن یہ ریپوزٹری `routatic-proxy` کے لیے ایک کراس پلیٹ فارم GUI فراہم کرتی ہے: - **macOS** — سسٹم ٹرے انٹیگریشن کے ساتھ مقامی Cocoa ونڈو (CGO درکار ہے)۔ **Releases** صفحے سے `.dmg` ڈاؤن لوڈ کریں۔ - **Linux** — `xdg-open` کے ذریعے براؤزر بیسڈ GUI (ڈیفالٹ، CGO درکار نہیں)۔ سسٹم ٹرے کے لیے: `CGO_ENABLED=1` کے ساتھ بلڈ کریں اور `libappindicator-gtk3-devel` (Fedora) یا `libayatana-appindicator3-dev` (Ubuntu/Debian) انسٹال کریں۔ - **Windows** — GUI معاون نہیں (صرف CLI)۔ **ڈیش بورڈ ٹیبز:** Overview (ریئل ٹائم میٹرکس اور ماڈل تقسیم)، History (فلٹرز کے ساتھ آخری 1000 درخواستیں)، Settings (ہاٹ ری لوڈ کے ساتھ کنفگ میں ترمیم)۔ ڈیش بورڈ `start` استعمال کرتے وقت `http://127.0.0.1:3445` پر دستیاب ہوتا ہے (`serve` نہیں)۔ ## فوری آغاز ```bash # 1. انسٹال کریں brew tap routatic/tap && brew install routatic-proxy # 2. کنفیگریشن شروع کریں routatic-proxy init # 3. اپنی API کلید سیٹ کریں export ROUTATIC_PROXY_API_KEY=sk-opencode-your-key-here # 4. پراکسی شروع کریں routatic-proxy serve # 5. Claude Code کنفیگر کریں export ANTHROPIC_BASE_URL=http://127.0.0.1:3456 export ANTHROPIC_AUTH_TOKEN=unused # 6. Claude Code چلائیں claude ``` **Fedora / RHEL:** ہر ریلیز `x86_64` اور `aarch64` RPMs کے ساتھ آتی ہے — `sudo dnf install https://github.com/routatic/proxy/releases/download/vX.Y.Z/routatic-proxy-X.Y.Z-1.x86_64.rpm`۔ Homebrew، Scoop، Docker، اور سورس سے بلڈ کے اختیارات کے لیے [INSTALLATION.md](INSTALLATION.md) دیکھیں۔ فراہم کنندگان کو تبدیل کرنے کے لیے GUI پسند ہے؟ routatic-proxy [CC-Switch](https://github.com/farion1231/cc-switch) کے ساتھ کام کرتی ہے۔ ## CLI کمانڈز ``` routatic-proxy start پراکسی + ڈیش بورڈ شروع کریں (http://127.0.0.1:3445) routatic-proxy start -b پراکسی + ڈیش بورڈ پس منظر میں شروع کریں routatic-proxy serve صرف پراکسی سرور شروع کریں (ہیڈ لیس، ڈیش بورڈ کے بغیر) routatic-proxy serve -b صرف پراکسی پس منظر میں شروع کریں (ٹرمینل سے الگ) routatic-proxy stop چلتی ہوئی پراکسی سرور بند کریں routatic-proxy status چیک کریں کہ پراکسی چل رہی ہے یا نہیں routatic-proxy init ڈیفالٹ کنفیگریشن فائل بنائیں routatic-proxy validate کنفیگریشن فائل کی توثیق کریں routatic-proxy models تمام دستیاب ماڈلز کی فہرست بنائیں routatic-proxy autostart enable لاگ ان پر آٹو اسٹارٹ فعال کریں routatic-proxy update اپنے چینل پر تازہ ترین ریلیز میں اپ ڈیٹ کریں routatic-proxy update check انسٹال کیے بغیر نئی ریلیز چیک کریں routatic-proxy update-channel ریلیز چینل دکھائیں یا تبدیل کریں (stable|beta) routatic-proxy --version ورژن دکھائیں ``` ## دستاویزات | دستاویز | تفصیل | |----------|-------------| | [MODELS.md](MODELS.md) | تمام فراہم کنندگان میں ماڈل حوالہ — صلاحیتیں، لاگتیں، اینڈ پوائنٹس، روٹنگ کی سفارشات | | [docs/openrouter.md](docs/openrouter.md) | OpenRouter فراہم کنندہ سیٹ اپ اور کنفیگریشن | | [CONFIGURATION.md](CONFIGURATION.md) | کنفگ فائل حوالہ، ماحولیاتی متغیرات، ماڈل روٹنگ، فال بیک چینز | | [INSTALLATION.md](INSTALLATION.md) | Homebrew، Scoop، سورس سے بلڈ، Docker | | [CONTRIBUTING.md](CONTRIBUTING.md) | ڈیولپمنٹ سیٹ اپ، آرکیٹیکچر | | [TROUBLESHOOTING.md](TROUBLESHOOTING.md) | عام مسائل اور ڈیبگ موڈ | | [docs/architecture.md](docs/architecture.md) | سسٹم ڈیزائن اور درخواست کا بہاؤ | | [docs/fedora-setup.md](docs/fedora-setup.md) | Fedora 44 سیٹ اپ (systemd، SELinux) | | [docs/reference-api.md](docs/reference-api.md) | HTTP API حوالہ | | [docs/howto-add-model.md](docs/howto-add-model.md) | نئے ماڈلز شامل کرنا (کوئی کوڈ تبدیلی نہیں) | | [docs/howto-custom-routing.md](docs/howto-custom-routing.md) | منظر نامہ کی شناخت اور روٹنگ کو حسب ضرورت بنانا | | [docs/howto-debug-routing.md](docs/howto-debug-routing.md) | روٹنگ کے مسائل کی ڈیبگنگ | ## ریلیز چینلز یہ پروجیکٹ دو چینلز پر جاری ہوتا ہے۔ Stable ڈیفالٹ ہے؛ beta آپ کو نئی خصوصیات جلد فراہم کرتا ہے۔ ```bash routatic-proxy update-channel beta # betas میں شامل ہوں routatic-proxy update # تازہ ترین beta انسٹال کریں routatic-proxy update-channel stable # واپس stable ریلیز پر ``` ### Beta چینل (خودکار) - **ٹرگر:** `main` برانچ پر ہر پش - **ورژن فارمیٹ:** `v{UPCOMING}-beta.{N}` (مثلاً `v0.6.4-beta.1`)، جہاں `{N}` ایک ترتیبی کاؤنٹر ہے جو اس ورژن کے stable کے طور پر جاری ہونے پر دوبارہ شروع ہوتا ہے - **GitHub ریلیز:** بطور prerelease نشان زد - **Docker ٹیگز:** `beta` (رولنگ)، نیز درست `v{UPCOMING}-beta.{N}` - **استعمال کا مقصد:** تازہ ترین خصوصیات اور بگ فکسز فوری حاصل کریں؛ ٹیسٹنگ کے لیے مثالی ### پروڈکشن چینل (دستی) - **ٹرگر:** `releases` برانچ پر دستی `workflow_dispatch` - **ورژن فارمیٹ:** `vX.Y.Z` (سیمنٹک ورژننگ) - **GitHub ریلیز:** بطور stable نشان زد - **Docker ٹیگز:** `vX.Y.Z`، `vX.Y`، `vX`، `latest` - **استعمال کا مقصد:** پروڈکشن استعمال کے لیے مستحکم، آزمودہ ریلیز ## تعاون ہم تعاون کا خیرمقدم کرتے ہیں! ڈیولپمنٹ سیٹ اپ، آرکیٹیکچر کا جائزہ، اور پل ریکویسٹ جمع کرانے کے طریقے کے لیے براہ کرم [CONTRIBUTING.md](CONTRIBUTING.md) دیکھیں۔ ## لائسنس [AGPL-3.0](LICENSE)