تخطَّ إلى المحتوى

المزوّدون

استخدام أي موفّر LLM في OpenCode.

يستخدم OpenCode ‏AI SDK وModels.dev لدعم أكثر من 75 موفّر LLM، كما يدعم تشغيل النماذج المحلية.

لإضافة مزوّد تحتاج إلى:

  1. أضف مفاتيح API الخاصة بالمزوّد باستخدام الأمر /connect.
  2. اضبط المزوّد في ملف إعدادات OpenCode.

بيانات الاعتماد

عند إضافة مفاتيح API الخاصة بمزوّد عبر الأمر /connect، يتم تخزينها في ~/.local/share/opencode/auth.json.


الإعدادات

يمكنك تخصيص المزوّدات عبر قسم provider في ملف إعدادات OpenCode.


عنوان URL الأساسي

يمكنك تخصيص عنوان URL الأساسي لأي مزوّد عبر خيار baseURL. يفيد ذلك عند استخدام خدمات وسيطة (proxy) أو نقاط نهاية مخصّصة.

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"anthropic": {
"options": {
"baseURL": "https://api.anthropic.com/v1"
}
}
}
}

OpenCode Zen

OpenCode Zen هي قائمة نماذج يوفّرها فريق OpenCode وقد تم اختبارها والتحقق من أنها تعمل بشكل جيد مع OpenCode. اعرف المزيد.

  1. شغّل الأمر /connect في TUI، واختر opencode، ثم انتقل إلى opencode.ai/auth.

    /connect
  2. سجّل الدخول، وأضف تفاصيل الفوترة، ثم انسخ مفتاح API الخاص بك.

  3. الصق مفتاح API.

    ┌ API key
    └ enter
  4. شغّل /models في TUI لعرض قائمة النماذج التي نوصي بها.

    /models

يعمل مثل أي مزوّد آخر في OpenCode واستخدامه اختياري بالكامل.


الدليل

لنلقِ نظرة على بعض المزوّدات بالتفصيل. إذا رغبت في إضافة مزوّد إلى القائمة، فلا تتردد في فتح PR.


302.AI

  1. توجّه إلى 302.AI console، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن 302.AI.

    /connect
  3. أدخل مفتاح API الخاص بـ 302.AI.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج.

    /models

Amazon Bedrock

لاستخدام Amazon Bedrock مع OpenCode:

  1. توجّه إلى Model catalog في Amazon Bedrock console واطلب الوصول إلى النماذج التي تريدها.

  2. اضبط المصادقة باستخدام إحدى الطرق التالية:

    متغيرات البيئة (بدء سريع)

    عيّن أحد متغيرات البيئة التالية أثناء تشغيل opencode:

    Terminal window
    # Option 1: Using AWS access keys
    AWS_ACCESS_KEY_ID=XXX AWS_SECRET_ACCESS_KEY=YYY opencode
    # Option 2: Using named AWS profile
    AWS_PROFILE=my-profile opencode
    # Option 3: Using Bedrock bearer token
    AWS_BEARER_TOKEN_BEDROCK=XXX opencode

    أو أضفها إلى bash profile:

    ~/.bash_profile
    export AWS_PROFILE=my-dev-profile
    export AWS_REGION=us-east-1

    ملف الإعدادات (موصى به)

    للإعداد الخاص بالمشروع أو الإعداد الدائم، استخدم opencode.json:

    opencode.json
    {
    "$schema": "https://opencode.ai/config.json",
    "provider": {
    "amazon-bedrock": {
    "options": {
    "region": "us-east-1",
    "profile": "my-aws-profile"
    }
    }
    }
    }

    الخيارات المتاحة:

    • region - منطقة AWS (مثل us-east-1، eu-west-1)
    • profile - ملف تعريف AWS المسمّى من ~/.aws/credentials
    • endpoint - عنوان URL لنقطة نهاية مخصّصة لنقاط نهاية VPC (اسم بديل لخيار baseURL العام)

    متقدم: نقاط نهاية VPC

    إذا كنت تستخدم نقاط نهاية VPC لـ Bedrock:

    opencode.json
    {
    "$schema": "https://opencode.ai/config.json",
    "provider": {
    "amazon-bedrock": {
    "options": {
    "region": "us-east-1",
    "profile": "production",
    "endpoint": "https://bedrock-runtime.us-east-1.vpce-xxxxx.amazonaws.com"
    }
    }
    }
    }

    طرق المصادقة - AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY: أنشئ مستخدم IAM وأنشئ مفاتيح وصول من AWS Console

    • AWS_PROFILE: استخدم ملفات تعريف مسمّاة من ~/.aws/credentials. اضبط أولا عبر aws configure --profile my-profile أو aws sso login
    • AWS_BEARER_TOKEN_BEDROCK: أنشئ مفاتيح API طويلة الأجل من Amazon Bedrock console
    • AWS_WEB_IDENTITY_TOKEN_FILE / AWS_ROLE_ARN: لـ EKS IRSA (IAM Roles for Service Accounts) أو بيئات Kubernetes أخرى مع اتحاد OIDC. يتم حقن متغيرات البيئة هذه تلقائيا بواسطة Kubernetes عند استخدام تعليقات حساب الخدمة.

    أولوية المصادقة

    يستخدم Amazon Bedrock أولوية المصادقة التالية:

    1. Bearer Token - متغير البيئة AWS_BEARER_TOKEN_BEDROCK أو الرمز من الأمر /connect
    2. AWS Credential Chain - الملف الشخصي، مفاتيح الوصول، بيانات الاعتماد المشتركة، أدوار IAM، رموز Web Identity (EKS IRSA)، بيانات تعريف المثيل
  3. شغّل الأمر /models لاختيار النموذج الذي تريده.

    /models

Anthropic

  1. بعد إنشاء حسابك، شغّل الأمر /connect واختر Anthropic.

    /connect
  2. هنا يمكنك اختيار خيار Claude Pro/Max وسيتم فتح المتصفح وسيطلب منك المصادقة.

    ┌ Select auth method
    │ Claude Pro/Max
    │ Create an API Key
    │ Manually enter API Key
  3. الآن يجب أن تكون جميع نماذج Anthropic متاحة عند استخدام الأمر /models.

    /models

استخدام اشتراك Claude Pro/Max داخل OpenCode غير مدعوم رسميا من Anthropic.

استخدام مفاتيح API

يمكنك أيضا اختيار Create an API Key إذا لم يكن لديك اشتراك Pro/Max. سيفتح ذلك المتصفح أيضا ويطلب منك تسجيل الدخول إلى Anthropic ويعطيك رمزا يمكنك لصقه في terminal.

أو إذا كان لديك مفتاح API بالفعل، يمكنك اختيار Manually enter API Key ولصقه في terminal.


Azure OpenAI

  1. توجّه إلى Azure portal وأنشئ موردا من نوع Azure OpenAI. ستحتاج إلى:

    • Resource name: يصبح جزءا من نقطة نهاية API لديك (https://RESOURCE_NAME.openai.azure.com/)
    • API key: إما KEY 1 أو KEY 2 من موردك
  2. اذهب إلى Azure AI Foundry وانشر نموذجا.

  3. شغّل الأمر /connect وابحث عن Azure.

    /connect
  4. أدخل مفتاح API.

    ┌ API key
    └ enter
  5. عيّن اسم المورد كمتغير بيئة:

    Terminal window
    AZURE_RESOURCE_NAME=XXX opencode

    أو أضفه إلى bash profile:

    ~/.bash_profile
    export AZURE_RESOURCE_NAME=XXX
  6. شغّل الأمر /models لاختيار النموذج الذي قمت بنشره.

    /models

Azure Cognitive Services

  1. توجّه إلى Azure portal وأنشئ موردا من نوع Azure OpenAI. ستحتاج إلى:

    • Resource name: يصبح جزءا من نقطة نهاية API لديك (https://AZURE_COGNITIVE_SERVICES_RESOURCE_NAME.cognitiveservices.azure.com/)
    • API key: إما KEY 1 أو KEY 2 من موردك
  2. اذهب إلى Azure AI Foundry وانشر نموذجا.

  3. شغّل الأمر /connect وابحث عن Azure Cognitive Services.

    /connect
  4. أدخل مفتاح API.

    ┌ API key
    └ enter
  5. عيّن اسم المورد كمتغير بيئة:

    Terminal window
    AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX opencode

    أو أضفه إلى bash profile:

    ~/.bash_profile
    export AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX
  6. شغّل الأمر /models لاختيار النموذج الذي قمت بنشره.

    /models

Baseten

  1. توجّه إلى Baseten، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن Baseten.

    /connect
  3. أدخل مفتاح API الخاص بـ Baseten.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج.

    /models

Cerebras

  1. توجّه إلى Cerebras console، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن Cerebras.

    /connect
  3. أدخل مفتاح API الخاص بـ Cerebras.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل Qwen 3 Coder 480B.

    /models

Cloudflare AI Gateway

تتيح Cloudflare AI Gateway الوصول إلى نماذج من OpenAI وAnthropic وWorkers AI وغيرها عبر نقطة نهاية موحّدة. مع Unified Billing لن تحتاج إلى مفاتيح API منفصلة لكل مزوّد.

  1. توجّه إلى Cloudflare dashboard، وانتقل إلى AI > AI Gateway، وأنشئ بوابة جديدة.

  2. عيّن Account ID وGateway ID كمتغيرات بيئة.

    ~/.bash_profile
    export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id
    export CLOUDFLARE_GATEWAY_ID=your-gateway-id
  3. شغّل الأمر /connect وابحث عن Cloudflare AI Gateway.

    /connect
  4. أدخل Cloudflare API token.

    ┌ API key
    └ enter

    أو عيّنه كمتغير بيئة.

    ~/.bash_profile
    export CLOUDFLARE_API_TOKEN=your-api-token
  5. شغّل الأمر /models لاختيار نموذج.

    /models

    يمكنك أيضا إضافة نماذج عبر إعدادات opencode.

    opencode.json
    {
    "$schema": "https://opencode.ai/config.json",
    "provider": {
    "cloudflare-ai-gateway": {
    "models": {
    "openai/gpt-4o": {},
    "anthropic/claude-sonnet-4": {}
    }
    }
    }
    }

Cortecs

  1. توجّه إلى Cortecs console، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن Cortecs.

    /connect
  3. أدخل مفتاح API الخاص بـ Cortecs.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل Kimi K2 Instruct.

    /models

DeepSeek

  1. توجّه إلى DeepSeek console، وأنشئ حسابا، ثم انقر Create new API key.

  2. شغّل الأمر /connect وابحث عن DeepSeek.

    /connect
  3. أدخل مفتاح API الخاص بـ DeepSeek.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج من DeepSeek مثل DeepSeek Reasoner.

    /models

Deep Infra

  1. توجّه إلى Deep Infra dashboard، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن Deep Infra.

    /connect
  3. أدخل مفتاح API الخاص بـ Deep Infra.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج.

    /models

Firmware

  1. توجّه إلى Firmware dashboard، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن Firmware.

    /connect
  3. أدخل مفتاح API الخاص بـ Firmware.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج.

    /models

Fireworks AI

  1. توجّه إلى Fireworks AI console، وأنشئ حسابا، ثم انقر Create API Key.

  2. شغّل الأمر /connect وابحث عن Fireworks AI.

    /connect
  3. أدخل مفتاح API الخاص بـ Fireworks AI.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل Kimi K2 Instruct.

    /models

GitLab Duo

يوفّر GitLab Duo دردشة وكيلة (agentic) مدعومة بالذكاء الاصطناعي مع قدرات استدعاء أدوات بشكل مدمج عبر Anthropic proxy الخاصة بـ GitLab.

  1. شغّل الأمر /connect واختر GitLab.

    /connect
  2. اختر طريقة المصادقة:

    ┌ Select auth method
    │ OAuth (Recommended)
    │ Personal Access Token

    استخدام OAuth (موصى به)

    اختر OAuth وسيفتح المتصفح لإتمام التفويض.

    استخدام Personal Access Token 1. اذهب إلى GitLab User Settings > Access Tokens

    1. انقر Add new token
    2. Name: OpenCode، Scopes: api
    3. انسخ الرمز (يبدأ بـ glpat-)
    4. أدخله في terminal
  3. شغّل الأمر /models لعرض النماذج المتاحة.

    /models

    تتوفر ثلاثة نماذج مبنية على Claude:

    • duo-chat-haiku-4-5 (Default) - استجابات سريعة للمهام السريعة
    • duo-chat-sonnet-4-5 - أداء متوازن لمعظم سير العمل
    • duo-chat-opus-4-5 - الأكثر قدرة للتحليل المعقّد
GitLab مستضاف ذاتيا

لمثيلات GitLab المستضافة ذاتيا:

Terminal window
export GITLAB_INSTANCE_URL=https://gitlab.company.com
export GITLAB_TOKEN=glpat-...

إذا كان مثيلك يشغّل AI Gateway مخصّصة:

Terminal window
GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com

أو أضفها إلى bash profile:

~/.bash_profile
export GITLAB_INSTANCE_URL=https://gitlab.company.com
export GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com
export GITLAB_TOKEN=glpat-...
OAuth للمثيلات المستضافة ذاتيا

لكي يعمل Oauth مع مثيلك المستضاف ذاتيا، تحتاج إلى إنشاء تطبيق جديد (Settings → Applications) مع callback URL ‏http://127.0.0.1:8080/callback ونطاقات الصلاحيات التالية:

  • api (Access the API on your behalf)
  • read_user (Read your personal information)
  • read_repository (Allows read-only access to the repository)

ثم عرّض application ID كمتغير بيئة:

Terminal window
export GITLAB_OAUTH_CLIENT_ID=your_application_id_here

مزيد من التوثيق على صفحة opencode-gitlab-auth.

التهيئة

خصّص عبر opencode.json:

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"gitlab": {
"options": {
"instanceUrl": "https://gitlab.com",
"featureFlags": {
"duo_agent_platform_agentic_chat": true,
"duo_agent_platform": true
}
}
}
}
}
أدوات GitLab API (اختياري، لكن موصى به بشدة)

للوصول إلى أدوات GitLab (merge requests وissues وpipelines وCI/CD وغيرها):

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["@gitlab/opencode-gitlab-plugin"]
}

يوفّر هذا الملحق قدرات شاملة لإدارة مستودعات GitLab بما في ذلك مراجعات MR وتتبع issues ومراقبة pipelines وغير ذلك.


GitHub Copilot

لاستخدام اشتراك GitHub Copilot مع opencode:

  1. شغّل الأمر /connect وابحث عن GitHub Copilot.

    /connect
  2. انتقل إلى github.com/login/device وأدخل الرمز.

    ┌ Login with GitHub Copilot
    │ https://github.com/login/device
    │ Enter code: 8F43-6FCF
    └ Waiting for authorization...
  3. الآن شغّل الأمر /models لاختيار النموذج الذي تريده.

    /models

Google Vertex AI

لاستخدام Google Vertex AI مع OpenCode:

  1. توجّه إلى Model Garden في Google Cloud Console وتحقق من النماذج المتاحة في منطقتك.

  2. عيّن متغيرات البيئة المطلوبة:

    • GOOGLE_CLOUD_PROJECT: معرّف مشروع Google Cloud لديك
    • VERTEX_LOCATION (اختياري): منطقة Vertex AI (الافتراضي global)
    • المصادقة (اختر واحدا):
      • GOOGLE_APPLICATION_CREDENTIALS: مسار ملف مفتاح حساب الخدمة بصيغة JSON
      • المصادقة عبر gcloud CLI: ‏gcloud auth application-default login

    عيّنها أثناء تشغيل opencode.

    Terminal window
    GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json GOOGLE_CLOUD_PROJECT=your-project-id opencode

    أو أضفها إلى bash profile.

    ~/.bash_profile
    export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
    export GOOGLE_CLOUD_PROJECT=your-project-id
    export VERTEX_LOCATION=global
  1. شغّل الأمر /models لاختيار النموذج الذي تريده.

    /models

Groq

  1. توجّه إلى Groq console، وانقر Create API Key، ثم انسخ المفتاح.

  2. شغّل الأمر /connect وابحث عن Groq.

    /connect
  3. أدخل مفتاح API الخاص بالمزوّد.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار ما تريده.

    /models

Hugging Face

توفّر Hugging Face Inference Providers وصولا إلى نماذج مفتوحة مدعومة من أكثر من 17 مزوّدا.

  1. توجّه إلى Hugging Face settings لإنشاء رمز (token) بصلاحية إجراء طلبات إلى Inference Providers.

  2. شغّل الأمر /connect وابحث عن Hugging Face.

    /connect
  3. أدخل token الخاص بـ Hugging Face.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل Kimi-K2-Instruct أو GLM-4.6.

    /models

Helicone

Helicone منصة لملاحظة LLM (observability) توفّر التسجيل والمراقبة والتحليلات لتطبيقات الذكاء الاصطناعي لديك. تقوم Helicone AI Gateway بتوجيه طلباتك تلقائيا إلى المزوّد المناسب بناء على النموذج.

  1. توجّه إلى Helicone، وأنشئ حسابا، ثم أنشئ مفتاح API من لوحة التحكم.

  2. شغّل الأمر /connect وابحث عن Helicone.

    /connect
  3. أدخل مفتاح API الخاص بـ Helicone.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج.

    /models

لمزيد من المزوّدات والميزات المتقدمة مثل التخزين المؤقت (caching) وتحديد المعدّل (rate limiting)، راجع توثيق Helicone.

إعدادات اختيارية

إذا رأيت ميزة أو نموذجا في Helicone لم يتم ضبطه تلقائيا عبر opencode، فيمكنك دائما ضبطه بنفسك.

هذه هي Helicone’s Model Directory، وستحتاجها للحصول على IDs الخاصة بالنماذج التي تريد إضافتها.

~/.config/opencode/opencode.jsonc
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"helicone": {
"npm": "@ai-sdk/openai-compatible",
"name": "Helicone",
"options": {
"baseURL": "https://ai-gateway.helicone.ai",
},
"models": {
"gpt-4o": {
// Model ID (from Helicone's model directory page)
"name": "GPT-4o", // Your own custom name for the model
},
"claude-sonnet-4-20250514": {
"name": "Claude Sonnet 4",
},
},
},
},
}

ترويسات مخصّصة

تدعم Helicone ترويسات مخصّصة لميزات مثل التخزين المؤقت وتتبع المستخدم وإدارة الجلسات. أضفها إلى إعداد المزوّد عبر options.headers:

~/.config/opencode/opencode.jsonc
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"helicone": {
"npm": "@ai-sdk/openai-compatible",
"name": "Helicone",
"options": {
"baseURL": "https://ai-gateway.helicone.ai",
"headers": {
"Helicone-Cache-Enabled": "true",
"Helicone-User-Id": "opencode",
},
},
},
},
}
تتبع الجلسات

تتيح ميزة Sessions في Helicone تجميع طلبات LLM المرتبطة معا. استخدم ملحق opencode-helicone-session لتسجيل كل محادثة OpenCode تلقائيا كجلسة في Helicone.

Terminal window
npm install -g opencode-helicone-session

أضفه إلى إعداداتك.

opencode.json
{
"plugin": ["opencode-helicone-session"]
}

يقوم الملحق بحقن ترويسات Helicone-Session-Id وHelicone-Session-Name ضمن طلباتك. في صفحة Sessions داخل Helicone، سترى كل محادثة OpenCode مدرجة كجلسة مستقلة.

ترويسات Helicone الشائعة
Headerالوصف
Helicone-Cache-Enabledتفعيل التخزين المؤقت للاستجابات (true/false)
Helicone-User-Idتتبع المقاييس حسب المستخدم
Helicone-Property-[Name]إضافة خصائص مخصّصة (مثل Helicone-Property-Environment)
Helicone-Prompt-Idربط الطلبات بإصدارات prompt

راجع Helicone Header Directory لعرض جميع الترويسات المتاحة.


llama.cpp

يمكنك ضبط opencode لاستخدام نماذج محلية عبر أداة llama-server ضمن llama.cpp

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"llama.cpp": {
"npm": "@ai-sdk/openai-compatible",
"name": "llama-server (local)",
"options": {
"baseURL": "http://127.0.0.1:8080/v1"
},
"models": {
"qwen3-coder:a3b": {
"name": "Qwen3-Coder: a3b-30b (local)",
"limit": {
"context": 128000,
"output": 65536
}
}
}
}
}
}

في هذا المثال:

  • llama.cpp هو ID مزوّد مخصّص. يمكن أن يكون أي سلسلة نصية تريدها.
  • npm يحدد الحزمة المستخدمة لهذا المزوّد. هنا يتم استخدام @ai-sdk/openai-compatible لأي API متوافق مع OpenAI.
  • name هو اسم العرض للمزوّد في واجهة المستخدم.
  • options.baseURL هو نقطة نهاية الخادم المحلي.
  • models هو خريطة من IDs النماذج إلى إعداداتها. سيتم عرض اسم النموذج ضمن قائمة اختيار النماذج.

IO.NET

تقدّم IO.NET ‏17 نموذجا محسّنا لاستخدامات متعددة:

  1. توجّه إلى IO.NET console، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن IO.NET.

    /connect
  3. أدخل مفتاح API الخاص بـ IO.NET.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج.

    /models

LM Studio

يمكنك ضبط opencode لاستخدام نماذج محلية عبر LM Studio.

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"lmstudio": {
"npm": "@ai-sdk/openai-compatible",
"name": "LM Studio (local)",
"options": {
"baseURL": "http://127.0.0.1:1234/v1"
},
"models": {
"google/gemma-3n-e4b": {
"name": "Gemma 3n-e4b (local)"
}
}
}
}
}

في هذا المثال:

  • lmstudio هو ID مزوّد مخصّص. يمكن أن يكون أي سلسلة نصية تريدها.
  • npm يحدد الحزمة المستخدمة لهذا المزوّد. هنا يتم استخدام @ai-sdk/openai-compatible لأي API متوافق مع OpenAI.
  • name هو اسم العرض للمزوّد في واجهة المستخدم.
  • options.baseURL هو نقطة نهاية الخادم المحلي.
  • models هو خريطة من IDs النماذج إلى إعداداتها. سيتم عرض اسم النموذج ضمن قائمة اختيار النماذج.

Moonshot AI

لاستخدام Kimi K2 من Moonshot AI:

  1. توجّه إلى Moonshot AI console، وأنشئ حسابا، ثم انقر Create API key.

  2. شغّل الأمر /connect وابحث عن Moonshot AI.

    /connect
  3. أدخل مفتاح API الخاص بـ Moonshot.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار Kimi K2.

    /models

MiniMax

  1. توجّه إلى MiniMax API Console، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن MiniMax.

    /connect
  3. أدخل مفتاح API الخاص بـ MiniMax.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل M2.1.

    /models

Nebius Token Factory

  1. توجّه إلى Nebius Token Factory console، وأنشئ حسابا، ثم انقر Add Key.

  2. شغّل الأمر /connect وابحث عن Nebius Token Factory.

    /connect
  3. أدخل مفتاح API الخاص بـ Nebius Token Factory.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل Kimi K2 Instruct.

    /models

Ollama

يمكنك ضبط opencode لاستخدام نماذج محلية عبر Ollama.

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"ollama": {
"npm": "@ai-sdk/openai-compatible",
"name": "Ollama (local)",
"options": {
"baseURL": "http://localhost:11434/v1"
},
"models": {
"llama2": {
"name": "Llama 2"
}
}
}
}
}

في هذا المثال:

  • ollama هو ID مزوّد مخصّص. يمكن أن يكون أي سلسلة نصية تريدها.
  • npm يحدد الحزمة المستخدمة لهذا المزوّد. هنا يتم استخدام @ai-sdk/openai-compatible لأي API متوافق مع OpenAI.
  • name هو اسم العرض للمزوّد في واجهة المستخدم.
  • options.baseURL هو نقطة نهاية الخادم المحلي.
  • models هو خريطة من IDs النماذج إلى إعداداتها. سيتم عرض اسم النموذج ضمن قائمة اختيار النماذج.

Ollama Cloud

لاستخدام Ollama Cloud مع OpenCode:

  1. توجّه إلى https://ollama.com/ وسجّل الدخول أو أنشئ حسابا.

  2. انتقل إلى Settings > Keys وانقر Add API Key لإنشاء مفتاح API جديد.

  3. انسخ مفتاح API لاستخدامه في OpenCode.

  4. شغّل الأمر /connect وابحث عن Ollama Cloud.

    /connect
  5. أدخل مفتاح API الخاص بـ Ollama Cloud.

    ┌ API key
    └ enter
  6. مهم: قبل استخدام نماذج السحابة في OpenCode، يجب سحب معلومات النموذج محليا:

    Terminal window
    ollama pull gpt-oss:20b-cloud
  7. شغّل الأمر /models لاختيار نموذج Ollama Cloud.

    /models

OpenAI

نوصي بالاشتراك في ChatGPT Plus أو Pro.

  1. بعد الاشتراك، شغّل الأمر /connect واختر OpenAI.

    /connect
  2. هنا يمكنك اختيار خيار ChatGPT Plus/Pro وسيتم فتح المتصفح وسيطلب منك المصادقة.

    ┌ Select auth method
    │ ChatGPT Plus/Pro
    │ Manually enter API Key
  3. الآن يجب أن تكون جميع نماذج OpenAI متاحة عند استخدام الأمر /models.

    /models
استخدام مفاتيح API

إذا كان لديك مفتاح API بالفعل، يمكنك اختيار Manually enter API Key ولصقه في terminal.


OpenCode Zen

OpenCode Zen هي قائمة من النماذج التي تم اختبارها والتحقق منها مقدّمة من فريق OpenCode. اعرف المزيد.

  1. سجّل الدخول إلى OpenCode Zen وانقر Create API Key.

  2. شغّل الأمر /connect وابحث عن OpenCode Zen.

    /connect
  3. أدخل مفتاح API الخاص بـ OpenCode.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل Qwen 3 Coder 480B.

    /models

OpenRouter

  1. توجّه إلى OpenRouter dashboard، وانقر Create API Key، ثم انسخ المفتاح.

  2. شغّل الأمر /connect وابحث عن OpenRouter.

    /connect
  3. أدخل مفتاح API الخاص بالمزوّد.

    ┌ API key
    └ enter
  4. يتم تحميل العديد من نماذج OpenRouter مسبقا بشكل افتراضي؛ شغّل الأمر /models لاختيار ما تريده.

    /models

    يمكنك أيضا إضافة نماذج إضافية عبر إعدادات opencode.

    opencode.json
    {
    "$schema": "https://opencode.ai/config.json",
    "provider": {
    "openrouter": {
    "models": {
    "somecoolnewmodel": {}
    }
    }
    }
    }
  5. يمكنك أيضا تخصيصها عبر إعدادات opencode. إليك مثالا على تحديد مزوّد

    opencode.json
    {
    "$schema": "https://opencode.ai/config.json",
    "provider": {
    "openrouter": {
    "models": {
    "moonshotai/kimi-k2": {
    "options": {
    "provider": {
    "order": ["baseten"],
    "allow_fallbacks": false
    }
    }
    }
    }
    }
    }
    }

SAP AI Core

يوفّر SAP AI Core وصولا إلى أكثر من 40 نموذجا من OpenAI وAnthropic وGoogle وAmazon وMeta وMistral وAI21 عبر منصة موحّدة.

  1. اذهب إلى SAP BTP Cockpit، وانتقل إلى مثيل خدمة SAP AI Core لديك، ثم أنشئ service key.

  2. شغّل الأمر /connect وابحث عن SAP AI Core.

    /connect
  3. أدخل JSON الخاص بـ service key.

    ┌ Service key
    └ enter

    أو عيّن متغير البيئة AICORE_SERVICE_KEY:

    Terminal window
    AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' opencode

    أو أضفه إلى bash profile:

    ~/.bash_profile
    export AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}'
  4. اختياريا، عيّن deployment ID وresource group:

    Terminal window
    AICORE_DEPLOYMENT_ID=your-deployment-id AICORE_RESOURCE_GROUP=your-resource-group opencode
  5. شغّل الأمر /models للاختيار من بين أكثر من 40 نموذجا متاحا.

    /models

OVHcloud AI Endpoints

  1. توجّه إلى OVHcloud panel. انتقل إلى قسم Public Cloud، ثم AI & Machine Learning > AI Endpoints، وفي تبويب API Keys انقر Create a new API key.

  2. شغّل الأمر /connect وابحث عن OVHcloud AI Endpoints.

    /connect
  3. أدخل مفتاح API الخاص بـ OVHcloud AI Endpoints.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل gpt-oss-120b.

    /models

Scaleway

لاستخدام Scaleway Generative APIs مع Opencode:

  1. توجّه إلى Scaleway Console IAM settings لإنشاء مفتاح API جديد.

  2. شغّل الأمر /connect وابحث عن Scaleway.

    /connect
  3. أدخل مفتاح API الخاص بـ Scaleway.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل devstral-2-123b-instruct-2512 أو gpt-oss-120b.

    /models

Together AI

  1. توجّه إلى Together AI console، وأنشئ حسابا، ثم انقر Add Key.

  2. شغّل الأمر /connect وابحث عن Together AI.

    /connect
  3. أدخل مفتاح API الخاص بـ Together AI.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل Kimi K2 Instruct.

    /models

Venice AI

  1. توجّه إلى Venice AI console، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن Venice AI.

    /connect
  3. أدخل مفتاح API الخاص بـ Venice AI.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل Llama 3.3 70B.

    /models

Vercel AI Gateway

تتيح Vercel AI Gateway الوصول إلى نماذج من OpenAI وAnthropic وGoogle وxAI وغيرها عبر نقطة نهاية موحّدة. تُقدّم النماذج بسعر القائمة دون أي زيادة.

  1. توجّه إلى Vercel dashboard، وانتقل إلى تبويب AI Gateway، ثم انقر API keys لإنشاء مفتاح API جديد.

  2. شغّل الأمر /connect وابحث عن Vercel AI Gateway.

    /connect
  3. أدخل مفتاح API الخاص بـ Vercel AI Gateway.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج.

    /models

يمكنك أيضا تخصيص النماذج عبر إعدادات opencode. إليك مثالا على تحديد ترتيب توجيه المزوّدات.

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"vercel": {
"models": {
"anthropic/claude-sonnet-4": {
"options": {
"order": ["anthropic", "vertex"]
}
}
}
}
}
}

بعض خيارات التوجيه المفيدة:

Optionالوصف
orderتسلسل المزوّدات التي سيتم تجربتها
onlyتقييد الاستخدام على مزوّدات محددة
zeroDataRetentionاستخدام مزوّدات بسياسات احتفاظ بيانات صفرية فقط

xAI

  1. توجّه إلى xAI console، وأنشئ حسابا، ثم أنشئ مفتاح API.

  2. شغّل الأمر /connect وابحث عن xAI.

    /connect
  3. أدخل مفتاح API الخاص بـ xAI.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل Grok Beta.

    /models

Z.AI

  1. توجّه إلى Z.AI API console، وأنشئ حسابا، ثم انقر Create a new API key.

  2. شغّل الأمر /connect وابحث عن Z.AI.

    /connect

    إذا كنت مشتركا في GLM Coding Plan، فاختر Z.AI Coding Plan.

  3. أدخل مفتاح API الخاص بـ Z.AI.

    ┌ API key
    └ enter
  4. شغّل الأمر /models لاختيار نموذج مثل GLM-4.7.

    /models

ZenMux

  1. توجّه إلى ZenMux dashboard، وانقر Create API Key، ثم انسخ المفتاح.

  2. شغّل الأمر /connect وابحث عن ZenMux.

    /connect
  3. أدخل مفتاح API الخاص بالمزوّد.

    ┌ API key
    └ enter
  4. يتم تحميل العديد من نماذج ZenMux مسبقا بشكل افتراضي؛ شغّل الأمر /models لاختيار ما تريده.

    /models

    يمكنك أيضا إضافة نماذج إضافية عبر إعدادات opencode.

    opencode.json
    {
    "$schema": "https://opencode.ai/config.json",
    "provider": {
    "zenmux": {
    "models": {
    "somecoolnewmodel": {}
    }
    }
    }
    }

موفّر مخصّص

لإضافة أي مزوّد OpenAI-compatible غير موجود ضمن الأمر /connect:

  1. شغّل الأمر /connect ومرّر للأسفل حتى Other.

    Terminal window
    $ /connect
    Add credential
    Select provider
    ...
    Other
  2. أدخل ID فريدا للمزوّد.

    Terminal window
    $ /connect
    Add credential
    Enter provider id
    myprovider
  3. أدخل مفتاح API الخاص بالمزوّد.

    Terminal window
    $ /connect
    Add credential
    This only stores a credential for myprovider - you will need to configure it in opencode.json, check the docs for examples.
    Enter your API key
    sk-...
  4. أنشئ أو حدّث ملف opencode.json في دليل مشروعك:

    opencode.json
    {
    "$schema": "https://opencode.ai/config.json",
    "provider": {
    "myprovider": {
    "npm": "@ai-sdk/openai-compatible",
    "name": "My AI ProviderDisplay Name",
    "options": {
    "baseURL": "https://api.myprovider.com/v1"
    },
    "models": {
    "my-model-name": {
    "name": "My Model Display Name"
    }
    }
    }
    }
    }

    خيارات التهيئة هي:

    • npm: حزمة AI SDK المستخدمة؛ استخدم @ai-sdk/openai-compatible للمزوّدات OpenAI-compatible
    • name: اسم العرض في واجهة المستخدم.
    • models: النماذج المتاحة.
    • options.baseURL: عنوان URL لنقطة نهاية API.
    • options.apiKey: تعيين مفتاح API اختياريا إذا لم تكن تستخدم auth.
    • options.headers: تعيين ترويسات مخصّصة اختياريا.

    مزيد من التفاصيل حول الخيارات المتقدمة في المثال التالي.

  5. شغّل الأمر /models وستظهر المزوّدات والنماذج المخصّصة في قائمة الاختيار.


مثال

إليك مثالا يضبط خيارات apiKey وheaders وخيارات limit الخاصة بالنموذج.

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"myprovider": {
"npm": "@ai-sdk/openai-compatible",
"name": "My AI ProviderDisplay Name",
"options": {
"baseURL": "https://api.myprovider.com/v1",
"apiKey": "{env:ANTHROPIC_API_KEY}",
"headers": {
"Authorization": "Bearer custom-token"
}
},
"models": {
"my-model-name": {
"name": "My Model Display Name",
"limit": {
"context": 200000,
"output": 65536
}
}
}
}
}
}

تفاصيل التهيئة:

  • apiKey: يتم تعيينه عبر صيغة متغيرات env، اعرف المزيد.
  • headers: ترويسات مخصّصة تُرسل مع كل طلب.
  • limit.context: الحد الأقصى لرموز الإدخال التي يقبلها النموذج.
  • limit.output: الحد الأقصى للرموز التي يمكن للنموذج توليدها.

تسمح حقول limit لـ OpenCode بفهم مقدار السياق المتبقي لديك. تسحب المزوّدات القياسية هذه القيم تلقائيا من models.dev.


استكشاف الأخطاء وإصلاحها

إذا كنت تواجه مشكلة في تهيئة مزوّد، فتحقق مما يلي:

  1. تحقق من إعداد auth: شغّل opencode auth list لمعرفة ما إذا كانت بيانات الاعتماد الخاصة بالمزوّد قد أضيفت إلى إعداداتك.

    لا ينطبق هذا على مزوّدات مثل Amazon Bedrock التي تعتمد على متغيرات البيئة لـ auth.

  2. للمزوّدات المخصّصة، راجع إعدادات opencode وتأكد من:

    • أن provider ID المستخدم في الأمر /connect يطابق الـ ID في إعدادات opencode.
    • استخدام حزمة npm الصحيحة للمزوّد. على سبيل المثال استخدم @ai-sdk/cerebras لـ Cerebras. ولكل المزوّدات الأخرى المتوافقة مع OpenAI استخدم @ai-sdk/openai-compatible.
    • استخدام نقطة نهاية API الصحيحة في الحقل options.baseURL.