كيفية استخدام Free Claude Code Gateway لتشغيل Claude Code مع Kimi وGLM وDeepSeek وOpenRouter

Free Claude Code Gateway هو مشروع مفتوح المصدر يسمح باستخدام واجهة Claude Code مع نماذج من مزودين آخرين مثل Kimi وGLM وDeepSeek وOpenRouter، دون الحاجة إلى Anthropic API Key

Free Claude Code Gateway architecture

ظهر مشروع Free Claude Code Gateway كحل مفتوح المصدر لمن يريد استخدام واجهة وأدوات Claude Code مع نموذج مختلف عن Claude نفسه، مثل Kimi أو GLM أو DeepSeek أو أي خدمة توفر API متوافقًا مع OpenAI

المشروع يعمل كوسيط بين Claude Code والمزود الذي تختاره. يستقبل الطلب بصيغة Anthropic Messages API، يحوله إلى صيغة OpenAI-compatible، يرسله إلى النموذج الخارجي، ثم يعيد تحويل النتيجة إلى الصيغة التي يفهمها Claude Code

مهم: المشروع لا يوفر Claude نفسه مجانًا ولا يتجاوز نظام الدفع أو خوادم Anthropic. عند استخدام Kimi أو DeepSeek مثلًا، فأنت تستخدم ذلك النموذج فعليًا داخل واجهة Claude Code

ما الذي تحتاجه قبل البدء؟

بحسب وثائق المشروع، تحتاج أولًا إلى تثبيت Node.js 20 أو إصدار أحدث، بالإضافة إلى API Key من مزود AI يقدم OpenAI-compatible API

يمكن استخدام Kimi من Moonshot، أو GLM من Z.ai، أو DeepSeek، أو OpenRouter، أو Mistral، أو Groq، أو Cerebras، كما يدعم المشروع خدمات محلية مثل LM Studio وOllama

1. تحميل المشروع

افتح Terminal أو PowerShell ثم قم باستنساخ المشروع من GitHub والدخول إلى مجلده وتثبيت الحزم المطلوبة

git clone https://github.com/rajakumar865465/Free-Claude-Code-Gateway.git
cd Free-Claude-Code-Gateway
npm install

بعد انتهاء npm install يصبح المشروع جاهزًا لإضافة إعدادات مزود الذكاء الاصطناعي الذي تريد استخدامه

2. إنشاء ملف الإعدادات

المشروع يتضمن ملفًا نموذجيًا باسم .env.example. قم بإنشاء نسخة منه باسم .env

cp .env.example .env

على Windows يمكنك ببساطة نسخ الملف يدويًا وإعادة تسميته إلى .env

3. إضافة API Key ومزود الخدمة

افتح ملف .env وأضف API Key الخاص بالمزود ورابط الـAPI والنموذج الافتراضي

المثال الموجود في وثائق المشروع يستخدم Kimi

BLUESMINDS_API_KEY=sk-your-provider-api-key
BLUESMINDS_BASE_URL=https://api.moonshot.cn/v1
PORT=8787
DEFAULT_MODEL=moonshotai/kimi-k2

استبدل sk-your-provider-api-key بالمفتاح الحقيقي الذي تحصل عليه من المزود

أمثلة على مزودي الخدمة

Kimi / Moonshot
https://api.moonshot.cn/v1

GLM / Z.ai
https://api.z.ai/api/paas/v4

DeepSeek
https://api.deepseek.com/v1

OpenRouter
https://openrouter.ai/api/v1

Groq
https://api.groq.com/openai/v1

يمكن أيضًا استخدام أي Endpoint آخر متوافق مع OpenAI، بما في ذلك خادم محلي يعمل عبر Ollama أو LM Studio

4. تشغيل Gateway

للاستخدام أثناء التجربة والتعديل، يمكن تشغيل المشروع في Development Mode

npm run dev

أما لتشغيل النسخة المبنية للاستخدام العادي

npm run build
npm start

إذا كانت الإعدادات صحيحة، سيبدأ Gateway افتراضيًا على العنوان التالي

http://localhost:8787

أما لوحة التحكم فتتوفر عبر

http://localhost:8787/admin
Free Claude Code Gateway dashboard

5. ربط Claude Code على Windows

بعد تشغيل Gateway، يجب إخبار Claude Code باستخدامه بدل الاتصال مباشرة بخوادم Anthropic

على Windows PowerShell استخدم

$env:ANTHROPIC_BASE_URL   = "http://localhost:8787"
$env:ANTHROPIC_AUTH_TOKEN = "any-value"
$env:ANTHROPIC_MODEL      = "claude-opus-4-5-20251101"

claude

القيمة المستخدمة في ANTHROPIC_MODEL هنا ليست بالضرورة النموذج الحقيقي الذي سيتم تشغيله، إذ يستخدم Gateway الاسم كمدخل ثم يحوله إلى النموذج الذي قمت بربطه به مثل Kimi أو GLM أو DeepSeek

على Linux وmacOS

export ANTHROPIC_BASE_URL=http://localhost:8787
export ANTHROPIC_AUTH_TOKEN=any-value
export ANTHROPIC_MODEL=claude-opus-4-5-20251101

claude

إذا بدأ Claude Code بصورة طبيعية وأصبح قادرًا على إرسال الطلبات والحصول على الردود، فهذا يعني أن الاتصال بين Claude Code وGateway والمزود الخارجي يعمل

يمكن حفظ الإعدادات بدل كتابتها كل مرة

يمكن إضافة متغيرات الاتصال مباشرة إلى ملف .claude.json داخل المشروع أو إلى إعدادات Claude المحلية

{
  "env": {
    "ANTHROPIC_BASE_URL": "http://localhost:8787",
    "ANTHROPIC_AUTH_TOKEN": "any-value",
    "ANTHROPIC_MODEL": "claude-opus-4-5-20251101"
  }
}

بهذه الطريقة سيستخدم Claude Code الـGateway تلقائيًا عند تشغيله داخل المشروع

6. ربط أسماء Claude بالنموذج الحقيقي

من أهم أجزاء المشروع نظام Model Router. Claude Code قد يطلب نموذجًا باسم Claude، بينما المزود الخارجي يستخدم اسمًا مختلفًا تمامًا

على سبيل المثال يمكن تحويل طلب Claude Opus أو Sonnet إلى Kimi K2

{
  "anthropic_to_bluesminds": {
    "claude-opus-4-5-20251101": "moonshotai/kimi-k2",
    "claude-3-5-sonnet-latest": "moonshotai/kimi-k2"
  },
  "default": "moonshotai/kimi-k2"
}

يمكن تعديل هذه الإعدادات داخل config/models.json، لكن المشروع يوفر كذلك طريقة أسهل من خلال Dashboard

استخدام Model Router من Dashboard

افتح لوحة التحكم ثم توجه إلى Model Router. من هناك يمكن مشاهدة أسماء نماذج Claude والـModels التي سيتم تحويل الطلب إليها

يوفر المشروع أيضًا ميزة Sync Models التي تسحب قائمة النماذج الحقيقية من المزود، ثم ميزة Auto-Map التي تحاول مطابقة الأسماء تلقائيًا

بحسب وثائق المشروع، التسلسل المقترح هو الضغط على Sync Models ثم Auto-Map، مراجعة الاقتراحات، اختيار Apply ثم الضغط على Save Router

لماذا Auto-Map مفيدة؟

بعض مزودي API يستخدمون أسماء مثل moonshotai/kimi-k2.6، بينما مزود آخر قد يعرض النموذج نفسه باسم kimi-k2.6. هذا الاختلاف البسيط قد يؤدي إلى فشل الطلبات إذا كان الاسم داخل إعدادات Gateway غير مطابق

Auto-Map تحاول التعرف على هذه الاختلافات وتقديم الاسم الصحيح الذي يعيده الـProvider

7. تجربة الاتصال قبل استخدام Claude Code

يمكن التأكد من أن Gateway يعمل عن طريق فتح

http://localhost:8787/health

ومن المفترض أن تحصل على Response مشابه

{
  "ok": true,
  "name": "Free Claude Code Gateway",
  "version": "1.0.0"
}

كما تحتوي صفحة Diagnostics داخل Dashboard على اختبار للاتصال بالمزود وشرح للمشكلة إذا فشل الطلب

Playground لتجربة النموذج

قبل الدخول إلى Claude Code يمكن استخدام صفحة Playground داخل Dashboard لإرسال Prompt مباشر إلى النموذج والتأكد من أن الـAPI Key والـBase URL وModel Mapping جميعها تعمل بشكل صحيح

كما تعرض الصفحة عملية تحويل الطلب بين Anthropic وOpenAI، ما يجعلها مفيدة جدًا عند محاولة اكتشاف سبب فشل Tool Calling أو Streaming

متابعة الطلبات لحظة بلحظة

صفحة Live Requests تعرض الطلبات التي تمر عبر Gateway في الوقت الحقيقي، مع إمكانية فلترتها حسب Status أو Model أو Endpoint

أما صفحة Overview فتعرض عدد الطلبات ونسبة النجاح والـLatency واستخدام النماذج والأخطاء الأخيرة

استخدامه مع Cline وRoo Code

المشروع لا يقتصر على Claude Code CLI، ويمكن استخدامه كذلك مع إضافات VS Code التي تدعم Anthropic API مثل Cline وRoo Code

API Provider: Anthropic
Base URL: http://localhost:8787
API Key: أي قيمة، أو PROXY_API_KEY إذا قمت بتفعيله
Model: claude-opus-4-5-20251101

استخدامه مع Continue.dev

{
  "models": [{
    "title": "Free Claude Code Gateway",
    "provider": "anthropic",
    "model": "claude-opus-4-5-20251101",
    "apiBase": "http://localhost:8787",
    "apiKey": "any-value"
  }]
}

استخدام Local Models مع Ollama

إذا كنت لا تريد الاعتماد على خدمة Cloud، يدعم Gateway أيضًا Ollama، بشرط أن يكون النموذج المحلي متاحًا عبر OpenAI-compatible endpoint

الرابط الافتراضي لـOllama بحسب المشروع هو

http://localhost:11434/v1

بعد ذلك تقوم بتحديد اسم النموذج المحلي داخل DEFAULT_MODEL أو Model Router بالطريقة نفسها

تشغيل Gateway عبر Docker

يوفر المشروع كذلك إعداد Docker جاهزًا لمن يفضل تشغيل الخدمة داخل Container

docker compose up --build

تأمين Dashboard والـGateway

إذا كنت تستخدم المشروع محليًا فقط على جهازك فقد تكفي الإعدادات الافتراضية للتجربة، لكن عند جعله متاحًا على الشبكة يجب حماية الواجهة والـAPI

يوفر المشروع متغير ADMIN_PASSWORD لحماية Dashboard باستخدام HTTP Basic Authentication

ADMIN_PASSWORD=your-secure-password

ويمكن كذلك إضافة PROXY_API_KEY حتى لا يتمكن أي شخص من إرسال طلبات إلى Gateway دون Bearer Token صحيح

PROXY_API_KEY=your-private-proxy-key

المشروع يطبق أيضًا Rate Limiting افتراضيًا بمعدل 60 طلبًا في الدقيقة لكل IP، ويقوم بحسب وثائقه بإخفاء API Keys وAuthorization Headers من السجلات

هل هو Claude مجانًا فعلًا؟

الاسم قد يعطي هذا الانطباع، لكن المشروع نفسه يوضح أن الإجابة هي لا. الأداة لا تجعل Claude Opus أو Sonnet متاحين مجانًا، وإنما تجعل Claude Code يعمل كواجهة أمام نموذج آخر

إذا قمت بربط Claude Code بـKimi K2 مثلًا، فإن الردود تأتي من Kimi K2، حتى لو كان Claude Code يرسل داخليًا اسمًا مثل claude-opus

ميزة المشروع الأساسية هي الاحتفاظ بتجربة Claude Code وأدواته مع إمكانية اختيار مزود أرخص أو خطة مجانية أو حتى Model محلي

ماذا عن Tool Calling وStreaming؟

المشروع يدعم Streaming عبر Server-Sent Events، كما يقوم بتحويل Tool Calling بين صيغة Anthropic وصيغة OpenAI في الاتجاهين

هذا مهم لأن Claude Code لا يعتمد فقط على الردود النصية، بل يحتاج إلى التعامل مع Tools وعمليات قراءة الملفات وتنفيذ الأوامر وسياق المحادثة

جودة التوافق الفعلية ستعتمد كذلك على النموذج الخارجي نفسه، لأن ليس كل Model يمتلك نفس مستوى Tool Calling أو Coding أو اتباع التعليمات

أسرع إعداد عملي

ثبت Node.js 20+، استنسخ المشروع، نفذ npm install، أنشئ ملف .env، ضع API Key وBase URL الخاصين بمزودك، شغل npm run dev، افتح Dashboard وتأكد من Model Router، ثم اضبط ANTHROPIC_BASE_URL إلى localhost:8787 وشغل أمر claude

ملاحظة حول الاستخدام

صاحب المشروع يؤكد أن Free Claude Code Gateway أداة Community مفتوحة المصدر وغير تابعة لـAnthropic، وأن استخدامها يجب أن يكون ضمن شروط خدمة Anthropic ومزود الـAPI الذي تختاره

كما تنص الوثائق على أن المشروع ليس مصممًا للتحايل على حدود الخطط المجانية أو Rate Limits، بل لاستخدام Claude-compatible tooling مع مزودين بديلين يمتلك المستخدم حق الوصول إليهم