# إعداد Qwen Code

> **آخر تحقق**: 2026-10-13 · 📄 وفق الوثائق الرسمية (Qwen Code 0.25.1)

## نظرة سريعة

| البند | التفاصيل |
|---|---|
| النماذج التي يمكنك استخدامها | Claude ✅ (المعلنة على جانب Anthropic) · GPT ✅ · النماذج الصينية ✅ (المعلنة على الجانب المتوافق مع OpenAI) · Gemini ❌ — لا يوفّر QCode سلسلة Gemini، لذا استخدم Claude أو GPT أو نموذجًا صينيًا |
| البروتوكول وBase URL | Anthropic: `https://api.qcode.cc/api` · المتوافق مع OpenAI: `https://api.qcode.cc/openai/v1` |
| مكان الإعداد | إعداد `modelProviders` في `~/.qwen/settings.json`؛ وداخل الجلسة: `/auth`، `/model`، `/doctor` |
| الوثائق الرسمية | [المصادقة](https://qwenlm.github.io/qwen-code-docs/en/users/configuration/auth/) · [مرجع الإعدادات](https://qwenlm.github.io/qwen-code-docs/en/users/configuration/settings/) |

Qwen Code هو مساعد برمجة طرفي مفتوح المصدر، منشور على npm باسم `@qwen-code/qwen-code`؛ وقد جرى التحقق من هذه الصفحة مقابل الإصدار `0.25.1`. تصنّف وثائقه ربط «المزوّدين الخارجيين مثل OpenAI وAnthropic وGoogle وAzure OpenAI وOpenRouter وRequesty وModelScope أو نقطة نهاية مستضافة ذاتيًا» ضمن مصادقة مفتاح API — وهذا هو مسار نقطة النهاية الذي يستخدمه QCode. يحدد إعداد `modelProviders` النماذج الموجودة وكيفية الوصول إليها، ويتيح `/model` التبديل بينها أثناء التشغيل.

## أي بروتوكول

| النماذج التي تريدها | مفتاح `modelProviders` (نوع المصادقة) | Base URL الذي تدخله |
|---|---|---|
| Claude | `anthropic` | `https://api.qcode.cc/api` |
| GPT والنماذج الصينية | `openai` | `https://api.qcode.cc/openai/v1` |

توثّق Qwen Code البروتوكول كجزء من مفتاح المزوّد: بالنسبة إلى المزوّدين المدمجين يجب أن يكون المفتاح نوع مصادقة صالحًا (`openai`، `anthropic`، `gemini`، `vertex-ai`). ثم يُعرَّف كل إدخال نموذج بواسطة بروتوكوله و`id` الخاص به و`baseUrl` المُعدّ له.

🔴 **لا تستدعِ Claude أبدًا عبر Base URL المتوافق مع OpenAI.** ترفض نقطة نهاية OpenAI لدى QCode معرّفات نماذج Claude؛ وتكون الاستجابة `Model '<id>' is not available on this endpoint`. يُعدّ Claude على جانب `anthropic` باستخدام `https://api.qcode.cc/api`. كما لا تُقدَّم معرّفات GPT على جانب Anthropic أيضًا.

اكتب Base URL تمامًا كما هو مذكور أعلاه: **دون شرطة مائلة لاحقة**، ولا تضع مسار الطلب في الحقل — فأنت تدخل الأساس، لا `.../v1/messages` أو `.../chat/completions`. إذا استخدمت عقدة إقليمية، يصبح أساس Anthropic هو `https://asia.qcode.cc/api` أو `https://us.qcode.cc/api`؛ والمفتاح هو نفسه.
## التثبيت

يتطلب التثبيت عبر npm الإصدار 22 من Node.js أو أحدث:

```bash
npm install -g @qwen-code/qwen-code@latest
```

على macOS وLinux يمكنك استخدام Homebrew بدلًا من ذلك:

```bash
brew install qwen-code
```

ثم افتح طرفية في مشروعك وشغّله:

```bash
cd /path/to/your-project
qwen
```

اكتب `/help` في شاشة الترحيب لعرض قائمة الأوامر.

## إعداد Claude (من جهة Anthropic)

المسار الموصى به في Qwen Code هو ملف واحد، `~/.qwen/settings.json`. كل مفتاح أدناه مأخوذ حرفيًا من وثائقه: يضم `modelProviders` مصفوفة واحدة لكل نوع مصادقة، ويحتاج كل إدخال إلى `id`، بينما تكون `name` و`baseUrl` و`generationConfig` اختيارية؛ ويشير `envKey` إلى متغير البيئة الذي يحمل بيانات الاعتماد.

```json
{
  "modelProviders": {
    "anthropic": [
      {
        "id": "claude-sonnet-5",
        "name": "claude-sonnet-5",
        "envKey": "ANTHROPIC_API_KEY",
        "baseUrl": "https://api.qcode.cc/api"
      }
    ]
  },
  "env": {
    "ANTHROPIC_API_KEY": "cr_your_qcode_key"
  },
  "security": {
    "auth": {
      "selectedType": "anthropic"
    }
  },
  "model": {
    "name": "claude-sonnet-5"
  }
}
```

ما تفعله الكتل الأربع، وفقًا لصياغة الجدول الرسمي: يعلن `modelProviders` عن النماذج المتاحة وكيفية الاتصال بها؛ ويخزّن `env` مفاتيح API في `settings.json` كخيار احتياطي، مع أولوية لـ `export` في shell وملفات `.env`؛ ويُعلم `security.auth.selectedType` Qwen Code بالبروتوكول الذي يجب استخدامه عند بدء التشغيل؛ و`model.name` هو النموذج الافتراضي الذي يُفعَّل عند بدء التشغيل ويجب أن يطابق إحدى قيم `id` لديك.

ولبروتوكول Anthropic أيضًا صيغة تعتمد على متغيرات البيئة — يسرد Qwen Code من أجلها `ANTHROPIC_API_KEY` و`ANTHROPIC_BASE_URL` و`ANTHROPIC_MODEL`:

```bash
export ANTHROPIC_API_KEY="cr_your_qcode_key"
export ANTHROPIC_BASE_URL="https://api.qcode.cc/api"
export ANTHROPIC_MODEL="claude-sonnet-5"
qwen
```

يمكنك أيضًا تشغيل `/auth` داخل CLI: خياره الثالث على المستوى الأعلى، **Custom Provider**، هو المدخل الموثّق للاتصال اليدوي بـ «خادم محلي أو وكيل أو مزوّد غير مدعوم»، ويدعم OpenAI وAnthropic وGemini وغيرها من نقاط النهاية المتوافقة.

> **بشأن مسار Anthropic.** تكتب أمثلة Anthropic الرسمية `baseUrl` مع لاحقة `/v1` (`"baseUrl": "https://api.anthropic.com/v1"`)، ولا توضح الوثائق كيف تبني نقطة نهاية Anthropic مسار الطلب انطلاقًا من عنوان أساس. لذلك تذكر هذه الصفحة فقط قيمة QCode الموثّقة: أدخل `https://api.qcode.cc/api` دون أي إضافة. ولا ندّعي نتيجة مختبَرة لأي صياغة أخرى.
## إعداد نماذج GPT والنماذج الصينية (الجانب المتوافق مع OpenAI)

يُوثّق نوع المصادقة `openai` بأنه لا يغطي API الخاص بـ OpenAI فحسب، بل يغطي أيضًا أي نقطة نهاية متوافقة مع OpenAI، بما في ذلك المزوّدون المجمّعون — وهي نقطة النهاية التي تُقدَّم عليها نماذج GPT والنماذج الصينية من QCode. تنطبق هنا القاعدة الرسمية للبوابة المستضافة: اضبط `baseUrl` على جذر `/v1` الخاص بـ API بدلًا من مسار المحادثة الكامل، لأن SDK يضيف مسار الطلب بنفسه. `https://api.qcode.cc/openai/v1` هو ذلك الجذر.

```json
{
  "modelProviders": {
    "openai": [
      {
        "id": "gpt-6.1-sol",
        "name": "gpt-6.1-sol",
        "envKey": "OPENAI_API_KEY",
        "baseUrl": "https://api.qcode.cc/openai/v1"
      },
      {
        "id": "deepseek-v4.1-flash",
        "name": "deepseek-v4.1-flash",
        "envKey": "OPENAI_API_KEY",
        "baseUrl": "https://api.qcode.cc/openai/v1"
      }
    ]
  },
  "env": {
    "OPENAI_API_KEY": "cr_your_qcode_key"
  },
  "security": {
    "auth": {
      "selectedType": "openai"
    }
  },
  "model": {
    "name": "gpt-6.1-sol"
  }
}
```

لا يتيح الوصول إلى أنواع المصادقة غير الافتراضية سوى `/model`، لذا أضف النماذج التي تريدها إلى المصفوفة واخترها هناك. تأتي معرّفات النماذج من كتالوج QCode: `gpt-6.1-sol`، `gpt-6-sol`، `gpt-5.6-terra`، أو معرّف صيني مثل [`glm-5.3`](/docs/usage/cn-models)، [`deepseek-v4.1-flash`](/docs/usage/cn-models) أو `qwen3.8-max`.

تستخدم صيغة متغيرات البيئة المتغيرات الثلاثة التي يسردها Qwen Code لهذا البروتوكول:

```bash
export OPENAI_API_KEY="cr_your_qcode_key"
export OPENAI_BASE_URL="https://api.qcode.cc/openai/v1"
export OPENAI_MODEL="gpt-6.1-sol"
qwen
```

## التحقق

اسأل CLI عما يراه:

```text
/doctor
/model
```

`/doctor` هو الطريقة الموثّقة للتحقق من إعداداتك الحالية في أي وقت؛ في جدول أوامر البدء السريع ينص سطره على «Check current authentication and environment». يفتح `/model` منتقي الإدخالات التي صرّحت بها، ويسري التبديل دون إعادة تشغيل — تلتقط جلسة تفاعلية قيد التشغيل تعديلات `modelProviders` في `settings.json`، لكن عليك إعادة فتح `/model` لرؤيتها.

ثم تحقّق من نقطة النهاية نفسها، بمعزل عن CLI. يحمل طلب Anthropic Messages المفتاح في `x-api-key` وإصدارًا في `anthropic-version`:

```bash
KEY="cr_your_qcode_key"
curl -X POST https://api.qcode.cc/api/v1/messages \
  -H "x-api-key: $KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-5","max_tokens":32,"messages":[{"role":"user","content":"ping"}]}'
```

جُمعت هذه الصفحة من الوثائق، ولا نملك مفتاح اختبار، لذا لا نزعم هنا وجود استجابة من ذلك الطلب. إذا عمل curl ولم يعمل CLI، فالاختلاف في `~/.qwen/settings.json`؛ وإذا فشل curl، فالمشكلة في Base URL أو في المفتاح — تابع مع [استكشاف الأخطاء وإصلاحها](/docs/reference/troubleshooting).
## استكشاف الأخطاء وإصلاحها / القيود المعروفة

| العَرَض | ما يعنيه | ما يجب فعله |
|---|---|---|
| يفشل معرّف Claude على Base URL المتوافق مع OpenAI | لا يقدّم QCode نماذج Claude إلا عبر بروتوكول Anthropic | انقل هذا النموذج إلى مصفوفة `anthropic` واضبط `baseUrl` الخاص به على `https://api.qcode.cc/api` |
| وجود `security.auth.apiKey` أو `security.auth.baseUrl` في إعداداتك | الإعدادان موثّقان بوصفهما مهجورين، مع ملاحظة الانتقال إلى `modelProviders` (`envKey` للإعداد الأول) | احذفهما وعرّف النموذج ضمن `modelProviders` |
| ضبط `wireApi` في إدخال Anthropic | تسرد الوثائق هذا بوصفه خطأ في الإعداد: `wireApi` حقل يخصّ OpenAI | أزله من إدخالات Anthropic |
| يبدو أن `extra_body` لا يفعل شيئًا | مدعوم فقط للمزوّدين المتوافقين مع OpenAI وهما `openai` و`qwen-oauth`؛ وتذكر الوثائق أنه يُتجاهَل لدى مزوّدي Anthropic وGemini | بالنسبة إلى نماذج المزوّدين، المكان الموثّق له هو `modelProviders[].generationConfig.extra_body` |
| لا يكون لـ `model.name` أي تأثير | يجب أن يطابق إحدى قيم `id` في `modelProviders` لديك | استخدم `id` معلنًا، أو اختر النموذج عبر `/model` |
| النموذج الذي تريده ليس في قائمة الاختيار | لا تُتاح أنواع المصادقة غير الافتراضية إلا عبر `/model`، ويجب تعريف نماذج Anthropic عبر `modelProviders` | أضف الإدخال إلى `~/.qwen/settings.json` ثم أعد فتح `/model` |

نقاط أخرى جديرة بالمعرفة:

- **Gemini**: يمكن ضبط Qwen Code على نوع المصادقة `gemini`، لكن QCode لا يوفّر سلسلة Gemini — استخدم Claude أو GPT أو [نموذجًا صينيًا](/docs/usage/cn-models).
- **غير متاح**: لا يوفّر QCode الطرازين `gpt-6-luna` أو `gpt-5.6-luna`؛ اختر نموذج GPT آخر مثل `gpt-6.1-sol` أو `gpt-6-sol` أو `gpt-5.6-terra`. ويُغطّى بيان النموذج المناسب لكل مهمة في [اختيار نموذج](/docs/usage/model-selection).
- **دلالات إعادة التشغيل**: تلتقط الجلسة الجارية تغييرات `modelProviders`، بينما يُقرأ `providerProtocol` مرة واحدة عند بدء التشغيل ويتطلب إعادة تشغيل.
- **لا أعلام لبيانات الاعتماد في هذه الصفحة**: تكتب الصفحات الرسمية علم Base URL الخاص بـ OpenAI بطريقتين مختلفتين، لذا اضبط بيانات الاعتماد فقط عبر `~/.qwen/settings.json` أو متغيرات البيئة.
- **سلامة Base URL**: بلا شرطة مائلة زائدة، ولا تكتب مسار الطلب أبدًا داخل `baseUrl`.
- **التكلفة**: الفوترة حسب token؛ وتُدرج أسعار كل نموذج على [qcode.cc/models](https://qcode.cc/models). ولا تذكر هذه الصفحة أي أسعار.

## روابط ذات صلة

- [نقاط النهاية ومسارات API](/docs/getting-started/endpoints-and-api-paths) — أي بروتوكول يخدم أي عائلة نماذج
- [توافق الأدوات](/docs/ide/tool-compatibility) — أدوات برمجة أخرى تتحدث بروتوكولات Anthropic أو المتوافقة مع OpenAI
- [إعداد OpenCode](/docs/ide/opencode) — أداة CLI طرفية أخرى على نقطتي النهاية نفسيهما
- [النماذج الصينية](/docs/usage/cn-models)
- [اختيار نموذج](/docs/usage/model-selection)
- [استكشاف الأخطاء وإصلاحها](/docs/reference/troubleshooting)