OpenCode کی تنصیب اور OmniProxy کی ترتیب
کیا آپ ایک کوڈنگ اسسٹنٹ چاہتے ہیں جو انسٹالیشن اور کنفیگریشن میں پھنسے بغیر آپ کے پروجیکٹ کو سمجھ سکے؟ OpenCode کو ٹرمینل، IDE، یا ڈیسک ٹاپ سے لانچ کیا جا سکتا ہے، اور پھر مرحلہ وار اس ماڈل سروس سے منسلک کیا جا سکتا ہے جسے آپ استعمال کرتے ہیں۔
OpenCode ایک اوپن سورس کوڈنگ اسسٹنٹ ہے جو آپ کو ٹرمینل، IDE، یا ڈیسک ٹاپ سے کوڈ لکھنے دیتا ہے۔ یہ آپ کا کوڈ یا سیاق و سباق (context) ذخیرہ نہیں کرتا، جو اسے پرائیویسی کے حساس پروجیکٹس کے لیے موزوں بناتا ہے۔ build کا استعمال پروجیکٹ میں ترمیم کرنے کے لیے کیا جاتا ہے، جبکہ plan ڈیفالٹ طور پر صرف پڑھنے کے لیے ہے اور یہ ناواقف کوڈ کو سمجھنے اور تبدیلیاں کرنے سے پہلے منصوبہ بندی کرنے کے لیے مفید ہے۔ آپ اپنی ضروریات کے مطابق ماڈل سروس کا انتخاب کر سکتے ہیں۔
شروع کرنے سے پہلے
انسٹالیشن اسکرپٹ سب سے آسان آپشن ہے۔ آپ کو ایک جدید ٹرمینل کی ضرورت ہے—ایک ٹرمینل ایپلی کیشن جو کمانڈز چلا سکے اور پروجیکٹ فائلوں کے ساتھ کام کر سکے—جیسے WezTerm، Alacritty، Ghostty، یا Kitty۔ Windows پر، WSL کو ترجیح دی جاتی ہے۔ یہ Windows کے اندر ایک Linux ماحول فراہم کرتا ہے جس میں زیادہ مکمل کارکردگی اور فعالیت ہوتی ہے۔
سب سے آسان
انسٹالیشن اسکرپٹ
- curl opencode.ai/install
- macOS Linux پر براہ راست استعمال کریں
- Windows پر WSL تجویز کردہ ہے
macOS Linux
Homebrew tap
- anomalyco/tap/opencode
- فارمولا سے زیادہ کثرت سے اپ ڈیٹ ہوتا ہے
- Arch کے لیے بھی ایک پیکیج دستیاب ہے
نیٹو Windows
پیکیج مینیجر
- choco یا scoop
- یا npm کے ساتھ عالمی سطح پر انسٹال کریں
- آپ اسے ریلیز سے بھی ڈاؤن لوڈ کر سکتے ہیں
موجودہ ماڈل لسٹ سے ماڈل ID بھی تیار رکھیں۔ ماڈل ID وہ نام ہے جسے سروس کسی مخصوص ماڈل کی درست شناخت کے لیے استعمال کرتی ہے۔
پہلی بار انسٹال اور لانچ کریں
سب سے آسان انسٹالیشن کمانڈ یہ ہے:
curl -fsSL https://opencode.ai/install | bash
آپ ان انسٹالیشن طریقوں میں سے ایک بھی استعمال کر سکتے ہیں:
- Node.js:
npm install -g opencode-ai۔ Bun، pnpm، اور Yarn کے پاس بھی متعلقہ عالمی انسٹالیشن کمانڈز ہیں؛ اس گائیڈ کے آخر میں تعارفی صفحہ دیکھیں۔ - macOS اور Linux پر Homebrew:
brew install anomalyco/tap/opencode۔ اس ٹیپ (tap) کا استعمال کریں کیونکہ یہbrew install opencodeسے زیادہ کثرت سے اپ ڈیٹ ہوتا ہے، جسے Homebrew ٹیم برقرار رکھتی ہے۔ - Arch Linux: مستحکم ریلیز کے لیے
sudo pacman -S opencode، یا نئے ورژن کے لیے AUR پیکیجopencode-binاستعمال کریں۔ - Windows:
choco install opencodeیاscoop install opencodeاستعمال کریں۔ آپnpm install -g opencode-aiبھی استعمال کر سکتے ہیں۔ بائنری فائلیں ریلیز سے بھی ڈاؤن لوڈ کی جا سکتی ہیں۔ Windows پر Bun کے ساتھ انسٹال کرنے کے لیے سپورٹ ابھی جاری ہے۔
اپنی پروجیکٹ ڈائریکٹری درج کریں، پھر OpenCode لانچ کریں:
cd /path/to/project
opencode
پہلی بار استعمال کرتے وقت، آپ /init چلا سکتے ہیں۔ یہ پروجیکٹ کا تجزیہ کرتا ہے اور پروجیکٹ روٹ میں AGENTS.md بناتا ہے۔ اس فائل کو Git میں کمٹ کیا جا سکتا ہے تاکہ پروجیکٹ ان ہدایات کو برقرار رکھے۔
OmniProxy سے کنکشن ویلیوز حاصل کریں
baseURL: https://your-omniproxy-origin.example/v1
API Key: <YOUR_OMNIPROXY_API_KEY>
Model ID: Copy from the current OmniProxy model list
baseURL سروس کا پتہ ہے، API Key رسائی کی سند (credential) ہے، اور Model ID ماڈل کا پورا نام ہے۔
/v1/chat/completions استعمال کرتے وقت، npm پیکیج کو @ai-sdk/openai-compatible پر سیٹ کریں۔ چیٹ کمپلیشنز (Chat Completions) چیٹ کی درخواست کے انٹرفیس کی ایک قسم ہے۔ صرف تب @ai-sdk/openai پر سوئچ کریں جب ماڈل /v1/responses استعمال کرے۔ جب OmniProxy کو چیٹ کمپلیشنز اینڈ پوائنٹ کے ذریعے استعمال کیا جاتا ہے، تو مطابقت پذیر پیکیج رکھیں۔
OmniProxy کی موجودہ لسٹ سے مکمل ماڈل ID کاپی کریں، بشمول کوئی بھی سلیش۔ 2026-10-09 تک، دو حوالہ IDs claude-sonnet-5-5 اور gpt-6-luna تھیں۔ gpt-6-luna چیٹ کمپلیشنز کو سپورٹ کرتا ہے؛ چیٹ کمپلیشنز کے ذریعے فنکشن کالنگ صرف تب سپورٹ کی جاتی ہے جب reasoning_effort، none ہو۔ ایسی ID کاپی نہ کریں جو لسٹ میں نہیں ہے۔
ٹول کنفیگریشن درج کریں
ایک فراہم کنندہ (Provider) کو کنفیگریشن ویلیوز کے ایک سیٹ کے طور پر سمجھا جا سکتا ہے جسے OpenCode ماڈل سروس سے منسلک ہونے کے لیے استعمال کرتا ہے۔ فراہم کنندہ کی دستاویزات ایک OpenAI-مطابقت پذیر سروس کو جو /connect کے تحت درج نہیں ہے، ایک کسٹم فراہم کنندہ کے طور پر برتاؤ کرتی ہے۔ ایک OpenAI-مطابقت پذیر سروس وہی درخواست فارمیٹ استعمال کرتی ہے اور اسے اسی قسم کے کلائنٹ کے ذریعے کال کیا جا سکتا ہے۔
- OpenCode میں
/connectچلائیں اور Other تک اسکرول کریں۔ - ایک فراہم کنندہ ID درج کریں۔ نیچے دی گئی مثال
omniproxyاستعمال کرتی ہے۔ ایسی ID منتخب کریں جسے یاد رکھنا آسان ہو کیونکہ آپ کو کنفیگریشن فائل میں وہی استعمال کرنی ہوگی۔ - OmniProxy API کلید درج کریں۔ یہ مرحلہ صرف سند کو محفوظ کرتا ہے؛ پتہ اور ماڈلز کو اب بھی
opencode.jsonمیں شامل کیا جانا چاہیے۔ سند~/.local/share/opencode/auth.jsonمیں محفوظ ہے۔ - پروجیکٹ ڈائریکٹری میں
opencode.jsonبنائیں یا ترمیم کریں:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"omniproxy": {
"npm": "@ai-sdk/openai-compatible",
"name": "OmniProxy",
"options": {
"baseURL": "https://your-omniproxy-origin.example/v1"
},
"models": {
"claude-sonnet-5-5": { "name": "Claude Sonnet 5.5" },
"gpt-6-luna": { "name": "GPT-6 Luna" }
}
}
}
}
/modelsچلائیں۔ کسٹم فراہم کنندہ اور اس کے ماڈلز لسٹ میں ظاہر ہوں گے۔
/connect کے تحت درج ID کا opencode.json میں موجود کلید سے مماثل ہونا ضروری ہے۔ اس فائل میں کوئی اصلی خفیہ کلید نہ رکھیں۔ اگر آپ /connect استعمال نہیں کرتے ہیں، تو آپ options.apiKey میں ماحولیاتی متغیر نحو (environment-variable syntax) استعمال کر سکتے ہیں، جیسے {env:VARIABLE_NAME}۔ OpenCode 1.18.34 کے ساتھ 2026-10-09 کو ٹیسٹنگ میں، کلید کو براہ راست پروجیکٹ کے options.apiKey میں /connect استعمال کیے بغیر رکھنے سے بھی کامیابی سے کنکشن قائم ہوا۔ اگر گیٹ وے کلید کی توثیق نہیں کرتا، تو یہ ویلیو صرف مقامی مشین پر استعمال ہونے والی پلیس ہولڈر سٹرنگ ہو سکتی ہے۔ models کے تحت کلیدوں کو لسٹ سے مکمل IDs استعمال کرنی چاہیے۔
کلید
/connect
- نیچے Other منتخب کریں
- اپنی فراہم کنندہ ID منتخب کریں
- auth.json میں محفوظ ہے
پروجیکٹ
opencode.json
- فراہم کنندہ کلید کو وہی نام استعمال کرنا چاہیے
- مطابقت پذیر npm پیکیج استعمال کریں
- baseURL /v1 پر ختم ہوتا ہے
منتخب کریں
/models
- ماڈل لسٹ میں ظاہر ہوتا ہے
- سوال پوچھنے سے پہلے ایک منتخب کریں
- گیٹ وے لسٹ سے ID استعمال کریں
ایک حقیقی کام کے ساتھ تصدیق کریں
پہلے پروجیکٹ ڈائریکٹری سے ایک حقیقی کام چلائیں۔ ماڈل حوالہ فارمیٹ Provider ID/model ID ہے؛ ماڈل ID کے اندر موجود کسی بھی سلیش کو برقرار رکھیں:
opencode run --model omniproxy/claude-sonnet-5-5 --auto "Explain what a file you specify does. Do not modify the file."
--auto اس رن کو فائل پڑھنے والے ٹولز جیسے ٹولز استعمال کرنے کی اجازت دیتا ہے۔ OpenCode 1.18.34 کے ساتھ 2026-10-09 کو ٹیسٹنگ میں، اس نے کامیابی سے مخصوص فائل کے مواد کو پڑھا۔ پہلا رن تقریباً دو منٹ کا تھا۔
انٹرایکٹو استعمال کے لیے، opencode چلائیں، پھر /models کے ساتھ ایک ماڈل منتخب کریں۔ آپ فائلوں کو تلاش کرنے کے لیے @ استعمال کر سکتے ہیں۔ /connect کے ذریعے محفوظ کردہ سند کی تصدیق کے لیے opencode auth list استعمال کریں، پھر ذریعہ اور ماڈل ID کی تصدیق کے لیے OmniProxy کے درخواست ریکارڈز چیک کریں۔
لانچ کریں
opencode لانچ ہوتا ہے
- پہلے پروجیکٹ پر cd کریں
- auth لسٹ ID دکھاتی ہے
- کنفیگریشن فائل پروجیکٹ میں ہے
ٹاسک
اس نے کوڈ پڑھا
- کسی مخصوص فائل کے بارے میں پوچھیں
- اس کی وضاحت کا جائزہ لیں
- اگر یہ غلط ہے تو /undo استعمال کریں
لاگز
گیٹ وے میں نظر آتے ہیں
- ذریعہ OpenCode ہے
- ماڈل ID مماثل ہے
- کلید کمٹ نہ کریں
عام غلطیاں
- OmniProxy
/modelsکے تحت ظاہر نہیں ہوتا: چیک کریں کہ/connectکے تحت درج ID،opencode.jsonمیں موجود کلید سے مماثل ہے، کہnpm،@ai-sdk/openai-compatibleپر سیٹ ہے، اور یہ کہbaseURL،/v1پر ختم ہوتا ہے۔ - سند غائب ہے:
opencode auth listچلائیں۔ Bedrock جیسے فراہم کنندگان جو ماحولیاتی متغیرات پر انحصار کرتے ہیں یہاں ظاہر نہیں ہوتے؛/connectکے ذریعے ترتیب دیا گیا ایک کسٹم فراہم کنندہ نظر آنا چاہیے۔ - Windows فعالیت نامکمل ہے: اس کے بجائے WSL کے اندر انسٹالیشن اسکرپٹ استعمال کریں۔
- ماڈل ID غلط ہے: اسے OmniProxy کی موجودہ لسٹ سے دوبارہ کاپی کریں اور
modelsکے تحت متعلقہ کلید کو اپ ڈیٹ کریں۔ - درخواستیں غلط اینڈ پوائنٹ پر جا رہی ہیں: چیٹ کمپلیشنز کے لیے
@ai-sdk/openai-compatibleرکھیں۔ جب تک کہ OmniProxy پر وہ ماڈل واقعی/v1/responsesاستعمال نہ کرے، Responses انٹرفیس کے لیے پیکیج تبدیل نہ کریں۔
سرکاری حوالہ جات
انسٹالیشن کے لیے، OpenCode introduction دیکھیں۔ کسٹم فراہم کنندگان کے لیے، Providers دیکھیں۔ مثالوں میں استعمال ہونے والی ماڈل IDs کے لیے، Claude model overview اور GPT-6 Luna دیکھیں۔
اپنے ذاتی OmniProxy ترتیب سے ہر پلیس ہولڈر کو ویلیوز سے تبدیل کریں۔ کبھی بھی ایک حقیقی کنج شائع نہ کریں۔
محض محفوظ نتیجہ یا HTTP 200 مکمل ایجنٹ مطابقت کی ضمانت نہیں دیتا۔ OmniProxy کی کال ریکارڈ میں ذریعہ اور ماڈل چیک کریں۔