DeepSeek Harness: التثبيت والتشغيل
آخر تحديث: 2026-08-31
تثبيت DeepSeek Harness بسيط للغاية — أمر واحد يبدأ تشغيلك، دون حاجة لإعداد بيئة معقدة. سواء استخدمت npx لتجربة بنقرة واحدة أو شغّلته من المصدر للتخصيص العميق، يمكن لـ DSH أن يبدأ عملك خلال 5 دقائق.
npx @deepseek-ai/dsh web للتشغيل بنقرة واحدة دون تثبيت تبعيات يدويًا. طريقة المصدر مخصصة للمطورين الذين يحتاجون لتعديل الإطار نفسه.
📋 المتطلبات المسبقة: معرفة أساسية بسطر الأوامر، إكمال 01-intro.md
1. ما ستتعلمه
- إعداد بيئة Node.js 18+
- تشغيل واجهة DSH Web UI بنقرة واحدة عبر npx
- تشغيل DSH من المصدر (pnpm install + pnpm dsh web)
- الوصول لواجهة الويب ونظرة عامة على الواجهة
- تفاصيل إعداد متغيرات البيئة
2. إعداد البيئة
(1) تثبيت Node.js
DSH مبني على بيئة Node.js، ويتطلب Node.js 18+ كحد أدنى.
# التحقق من إصدار Node.js
node --version
# v18.x.x أو أعلى
# التحقق من إصدار npm
npm --version
# 9.x.x أو أعلى
إذا لم يكن Node.js مثبتًا بعد:
# macOS (Homebrew)
brew install node
# Ubuntu/Debian
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
# Windows (winget)
winget install OpenJS.NodeJS.LTS
نوصي باستخدام Node.js 20 LTS — هذا هو إصدار الدعم طويل الأمد الأكثر استقرارًا حاليًا، وDSH اختُبر بشكل أشمل عليه.
(2) توافق أنظمة التشغيل
| نظام التشغيل | حالة الدعم | ملاحظات |
|---|---|---|
| macOS 12+ | ✅ مدعوم بالكامل | Intel وApple Silicon |
| Ubuntu 20.04+ | ✅ مدعوم بالكامل | إصدارات LTS موصى بها |
| Windows 10+ | ✅ مدعوم | بيئة WSL2 موصى بها |
| Windows (أصلي) | ⚠️ دعم أساسي | قد تواجه بعض الأدوات مشاكل في المسارات |
(3) متطلبات الشبكة
يحتاج DSH للوصول إلى واجهات API لـ LLM. تأكد من أن بيئة شبكتك:
# اختبار اتصال DeepSeek API (يتطلب API Key)
curl -s https://api.deepseek.com/v1/models \
-H "Authorization: Bearer $DEEPSEEK_API_KEY" | head -20
# اختبار اتصال نقطة نهاية متوافقة مع OpenAI
curl -s https://api.openai.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY" | head -20
3. التشغيل بنقرة واحدة: طريقة npx
(1) تشغيل واجهة الويب
الطريقة الأبسط — لا حاجة للتثبيت، فقط شغّل:
npx @deepseek-ai/dsh web
عند أول تشغيل، سيقوم npx تلقائيًا بتنزيل أحدث إصدار من حزمة DSH:
Need to install the following packages:
@deepseek-ai/dsh@latest
Ok to proceed? (y) y
🚀 DeepSeek Harness v0.x.x (developer preview)
📦 Starting Web UI...
➜ Local: http://127.0.0.1:3080/
➜ Network: http://192.168.1.100:3080/
⚠️ Developer Preview: APIs may change before stable release.
(2) الوصول لواجهة الويب
افتح متصفحك وانتقل إلى http://127.0.0.1:3080/:

http://127.0.0.1:3080/
├── يسار: قائمة الجلسات
├── وسط: منطقة المحادثة
├── يمين: لوحة الأدوات
└── أعلى: اختيار الوضع + اختيار النموذج
(3) خصائص طريقة npx
| المزايا | العيوب |
|---|---|
| بدون تثبيت، تشغيل فوري | قد يُنزّل إصدارًا جديدًا كل مرة |
| يحصل دائمًا على أحدث إصدار | لا يمكن التحكم في الإصدار |
| رائع للتجربة السريعة | تخصيص محدود |
(4) ▶ مثال 4
# تحديد رقم إصدار
npx @deepseek-ai/dsh@0.5.0 web
# تحديد إصدار تجريبي
npx @deepseek-ai/dsh@beta web
4. التشغيل من المصدر
(1) استنساخ المستودع
مناسب للمستخدمين الذين يحتاجون لتعديل كود الإطار أو المساهمة في التطوير:
# استنساخ المستودع
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
# عرض الفروع المتاحة
git branch -r
# origin/main
# origin/dev
# origin/feature/...
(2) تثبيت التبعيات
يستخدم DSH مدير الحزم pnpm:
# تثبيت pnpm (إذا لم يكن مثبتًا)
npm install -g pnpm
# تثبيت تبعيات المشروع
pnpm install
سيقوم pnpm install بتثبيت جميع تبعيات مساحة العمل، بما في ذلك:
packages/
├── core/ # نواة Cordis
├── cli/ # أداة سطر الأوامر
├── web/ # واجهة الويب
├── sdk-python/ # Python SDK
├── plugins/ # إضافات مدمجة
└── tools/ # أدوات مدمجة
(3) ▶ مثال 3
# تشغيل واجهة الويب (وضع التطوير، مع إعادة التحميل السريع)
pnpm dsh web --dev
# تشغيل وضع سطر الأوامر
pnpm dsh cli
# تشغيل وضع Headless
pnpm dsh headless
الاختلافات بين وضعي التطوير والإنتاج:
| البُعد | وضع التطوير --dev |
وضع الإنتاج |
|---|---|---|
| إعادة التحميل السريع | ✅ تحديث تلقائي عند تغيير الكود | ❌ |
| Source Map | ✅ معلومات تصحيح كاملة | ❌ |
| الأداء | أبطأ (غير محسّن) | أسرع (تحسين مترجم) |
| مستوى السجل | debug | info |
(4) ▶ مثال 4
# بناء جميع الحزم
pnpm build
# بناء واجهة الويب فقط
pnpm --filter @deepseek-ai/dsh-web build
# التشغيل بعد البناء
pnpm dsh web
5. إعداد متغيرات البيئة
يدير DSH مفاتيح API ونقاط نهاية النماذج والإعدادات الأخرى عبر متغيرات البيئة.
(1) متغيرات البيئة الأساسية
# DeepSeek API Key (مطلوب عند استخدام نماذج DeepSeek)
export DEEPSEEK_API_KEY="sk-xxxxxxxxxxxxxxxx"
# نقطة نهاية متوافقة مع OpenAI (اختياري، عند استخدام نماذج غير DeepSeek)
export OPENAI_API_KEY="sk-xxxxxxxxxxxxxxxx"
export OPENAI_BASE_URL="https://api.openai.com/v1"
# نقطة نهاية مخصصة (اختياري، عند استخدام واجهات API متوافقة خارجية)
export DSH_LLM_BASE_URL="https://your-custom-endpoint.com/v1"
export DSH_LLM_API_KEY="your-api-key"
(2) إعدادات التشغيل
# منفذ واجهة الويب (الافتراضي 3080)
export DSH_PORT=3080
# مستوى السجل (debug / info / warn / error)
export DSH_LOG_LEVEL=info
# مساحة العمل (الدليل الجذر لعمليات Agent)
export DSH_WORKSPACE="/path/to/your/project"
# وضع Sandbox (strict / permissive / off)
export DSH_SANDBOX=permissive
(3) استخدام ملف .env
نوصي بإنشاء ملف .env في جذر مشروعك لإدارة متغيرات البيئة:
# مثال على ملف .env
DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxxxx
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxx
DSH_PORT=3080
DSH_LOG_LEVEL=info
DSH_WORKSPACE=/home/alice/my-project
DSH_SANDBOX=permissive
ملاحظة أمنية: ملف
.envيحتوي على معلومات حساسة. تأكد من إضافته إلى.gitignore:
# التأكد من عدم رفع .env
echo ".env" >> .gitignore
(4) أولوية متغيرات البيئة
graph LR
A[وسائط سطر الأوامر] -->|الأعلى| RES[القيمة النهائية]
B[ملف .env] --> RES
C[متغيرات بيئة النظام] --> RES
D[القيم الافتراضية] -->|الأدنى| RES
6. تشغيل وضع سطر الأوامر
بالإضافة لواجهة الويب، يدعم DSH أيضًا التفاعل عبر سطر الأوامر فقط:
# تشغيل وضع سطر الأوامر
npx @deepseek-ai/dsh cli
# أو تحديد مساحة عمل
npx @deepseek-ai/dsh cli --workspace /path/to/project
# تحديد نموذج
npx @deepseek-ai/dsh cli --model deepseek-chat
# تحديد وضع تشغيل
npx @deepseek-ai/dsh cli --mode ptc
واجهة التفاعل في وضع سطر الأوامر:
$ npx @deepseek-ai/dsh cli
🚀 DeepSeek Harness v0.x.x
📂 Workspace: /home/alice/my-project
🤖 Model: deepseek-chat
🔧 Mode: standard
> Help me analyze this project's directory structure
🔍 Using tool: search...
📂 Reading directory structure...
Agent: This project is a typical Express.js application. The directory structure is as follows:
...
7. التحقق من التثبيت
(1) التحقق من إصدار DSH
npx @deepseek-ai/dsh --version
# 0.x.x
(2) التحقق من إعدادات البيئة
npx @deepseek-ai/dsh doctor
يقوم dsh doctor بالتحقق تلقائيًا من:
✅ Node.js: v20.11.0
✅ pnpm: 8.15.0
✅ DEEPSEEK_API_KEY: configured (sk-...xxxx)
⚠️ OPENAI_API_KEY: not configured (optional)
✅ Network: api.deepseek.com reachable
✅ Workspace: /home/alice/my-project (exists)
⚠️ Sandbox: permissive mode (not recommended for production)
(3) اختبار وظيفي سريع
# تشغيل واجهة الويب والتحقق باستخدام curl
npx @deepseek-ai/dsh web &
sleep 5
curl -s http://127.0.0.1:3080/api/health | head -5
# {"status":"ok","version":"0.x.x"}
8. مشاكل التثبيت الشائعة
(1) إصدار Node.js منخفض جدًا
Error: DSH requires Node.js 18 or higher.
Current version: 16.x.x
الحل:
# استخدام nvm لإدارة إصدارات Node.js المتعددة
nvm install 20
nvm use 20
(2) المنفذ قيد الاستخدام بالفعل
Error: Port 3080 is already in use.
الحل:
# تحديد منفذ مختلف
export DSH_PORT=3081
npx @deepseek-ai/dsh web
# أو البحث عن العملية التي تستخدم المنفذ
lsof -i :3080 # macOS/Linux
netstat -ano | findstr :3080 # Windows
(3) مفتاح API غير صالح
Error: Invalid API key. Please check your DEEPSEEK_API_KEY.
الحل: تحقق من تعيين متغير البيئة بشكل صحيح:
echo $DEEPSEEK_API_KEY
# يجب أن يُخرج sk-xxxxxxxxxxxxxxxx
# إذا كان فارغًا، عيّنه مرة أخرى
export DEEPSEEK_API_KEY="sk-your-actual-key"
❓ أسئلة شائعة
npm install -g @deepseek-ai/dsh، ثم التشغيل مباشرة بـ dsh web.docker run -p 3080:3080 -e DEEPSEEK_API_KEY=sk-xxx deepseek/dsh:latest.npm update -g @deepseek-ai/dsh. للتثبيت من المصدر، استخدم git pull && pnpm install.\ مقابل /) قد تسبب تعطل بعض الأدوات. نوصي باستخدام WSL2 لتشغيل DSH لأفضل تجربة.DSH_LOG_LEVEL=debug قبل التشغيل لرؤية عملية التهيئة الكاملة ومعلومات تحميل الإضافات.pnpm store prune && pnpm install --force. لمشاكل الشبكة، اضبط مرآة npm: pnpm config set registry https://registry.npmmirror.com.📖 ملخص
- DSH يتطلب Node.js 18+ كحد أدنى؛ Node.js 20 LTS موصى به
npx @deepseek-ai/dsh webيشغل واجهة الويب بنقرة واحدة، متاحة على http://127.0.0.1:3080- التشغيل من المصدر:
git clone+pnpm install+pnpm dsh web - متغيرات البيئة تُعد عبر ملف
.envأو export؛ يجب تعيين API Key - أمر
dsh doctorيمكنه التحقق من إعدادات البيئة بخطوة واحدة - مشاكل شائعة: إصدار Node، تعارض المنافذ، إعداد API Key
📝 تمارين
1. ⭐ أساسي: شغّل واجهة DSH Web UI باستخدام طريقة npx، وخذ لقطة شاشة (أو صِف) عناصر واجهة الصفحة الرئيسية التي تراها.
2. ⭐⭐ متوسط: استنسخ مستودع DSH من المصدر، أكمل pnpm install وشغّل وضع التطوير. سجّل أي مشاكل واجهتها أثناء التشغيل وكيف حللتها.
3. ⭐⭐⭐ تحدٍ: اضبط DSH للاتصال بكل من DeepSeek API ونقطة نهاية متوافقة مع OpenAI (مثل Ollama). بدّل بنجاح بين النموذجين في واجهة الويب وأرسل رسالة بكل منهما.