Reasonix: وكيل برمجة على طراز Claude Code يعمل على DeepSeek

تاريخ النشر
11 يوليو 2026
تاريخ التحديث
1 أغسطس 2026
بقلم
جاكوب لويد — كُتب بمساعدة الذكاء الاصطناعي بعد إنجاز المشروع
مدة القراءة
قراءة 1 دقيقة

بعبارة مبسطة: Reasonix برنامج تشغّله داخل الطرفية (terminal) يتصرف كمساعد برمجة بالذكاء الاصطناعي: تخبره بما تريد بلغة طبيعية بسيطة فيقرأ ويكتب ويختبر الكود نيابة عنك. وبدلًا من اشتراك شهري، يتحدث مع DeepSeek، وهي خدمة ذكاء اصطناعي رخيصة جدًا تُدفع حسب الاستخدام، لذا تكلف المساعدة البرمجية الحقيقية فلسات قليلة. يوضح هذا المقال كيفية تثبيته، وربط مفتاحك، وإبقائه محدَّثًا تلقائيًا.

إن كنت معجبًا بأسلوب عمل Claude Code — وكيل برمجة يعيش في الطرفية، يقرأ الملفات، يشغّل الأوامر، ويصحح أخطاءه بنفسه — لكنك تفضّل دفع أجزاء من السنت لكل مهمة بدلًا من اشتراك شهري، فهذه هي الوصفة: Reasonix، وكيل CLI على طراز Claude Code، موجّه نحو واجهة DeepSeek.

خلاصة سريعة

  • ما هو: Reasonix، واجهة CLI وكيلية للبرمجة على طراز Claude Code — وكلاء فرعيون، ومهارات، وذاكرة لكل مشروع — مضبوطة لاستخدام نماذج DeepSeek بدلًا من خطة مدفوعة.
  • التكلفة: دفع لكل توكن، بلا اشتراك. للمقارنة: شهر كامل من وكلائي العاملين على مدار الساعة بنفس مستويي DeepSeek هذين بلغت تكلفته 24.08 دولارًا.
  • ما تحتاجه: Node.js + npm، ومفتاح API لـ DeepSeek، وعشر دقائق.
  • ما تحصل عليه: وكيل برمجة طرفي، وإعداد يصمد أمام التحديثات، ومحدّث مجدول يبقيه حديثًا دون أن تفكر في الأمر.

ما تحصل عليه

تفتح طرفية داخل مشروع، وتكتب reasonix، وتصف ما تريد: "أضف علامة --dry-run لهذا السكربت وحدّث README." يقرأ الوكيل الملفات ذات الصلة، ويعدّلها، ويشغّل السكربت للتحقق من عمله، ثم يرفع تقريرًا — الحلقة ذاتها التي يعرفها مستخدمو Claude Code. الاختلافات تكمن في التمديدات الداخلية:

  • العقل هو DeepSeek، وتُفوتر بالتوكن. مستويان يغطيان كل شيء: نموذج flash للتعديلات اليومية والأعمال الرابطة، ونموذج تفكير pro لإعادة الهيكلة الشائكة والتصحيح. منظومة وكلائي العاملة على مدار الساعة تعمل على هذين المستويين نفسهما وقد بلغت تكلفتها 24.08 دولارًا لشهر كامل (9.54 دولارًا لـ flash + 14.54 دولارًا لـ pro) — نفس حجم العمل يُقدَّر بنحو 475–915 دولارًا على واجهات النماذج الرائدة.
  • الجدولة لك أنت. بما أنه لا يوجد ترخيص لكل مقعد، يمكنك تركه يطحن أعمالًا طويلة ومملة — إعادة هيكلة دفعية، كتابة اختبارات، مراجعات توثيق — دون مراقبة عداد استخدام.
  • الحالة تعيش في مجلدك الرئيسي (home). يحتفظ Reasonix بمجلد نقطي (~/.reasonix/) يضم ملف الإعداد إضافة إلى تاريخ الجلسات والذاكرة لكل مشروع، لذا يتذكر سياق كل مستودع عبر مرات التشغيل المتعددة.

الخطوة 1: التثبيت

إنها حزمة npm عالمية:

npm install -g reasonix
reasonix --version

هذا هو التثبيت بأكمله. إن كنت تضع Node تحت بادئة غير قياسية، فدوّن المسار الكامل لـ npm — ستحتاجه مرة أخرى في المحدّث بالخطوة 4.

الخطوة 2: توجيهه نحو DeepSeek

أنشئ مفتاح API من موقع منصة DeepSeek (دفع حسب الاستخدام؛ بلغت تكلفة منظومة وكلائي بأكملها خلال أول أحد عشر يومًا من يوليو 2.23 دولارًا). ثم صِف المزوّد في ~/.reasonix/config.toml:

# ~/.reasonix/config.toml — the shape, not a paste of mine
default_model = "deepseek-flash"

[[providers]]
name        = "deepseek"
base_url    = "https://api.deepseek.com"
models      = ["deepseek-v4-flash", "deepseek-v4-pro"]
api_key_env = "DEEPSEEK_API_KEY"    # NAME of the variable, not the key itself

تحديث للإصدار v1.18 — المفتاح لم يعد يوضع في config.toml. تسمّي متغيّر بيئة عبر api_key_env، وقيمته تعيش في ملف Reasonix الخاص ~/.reasonix/.env. إن كنت تتبع شرحًا أقدم يعرض حقل api_key مباشرة داخل الإعداد، فهذا هو الجزء الذي تغيّر. كل ما عداه هنا ما زال ساريًا.

تختلف أسماء المفاتيح بين واجهات الوكلاء المختلفة، لكنها جميعًا تختزل إلى الثلاثية ذاتها: عنوان URL الأساسي، وبيانات الاعتماد، ومعرّف (معرّفات) النموذج. قاعدتا نظافة تنطبقان بغض النظر عن الأداة:

  • استخدم chmod 600 على أي ملف يحتوي المفتاح، ولا تمرره أبدًا في سطر أوامر (ينتهي به المطاف في سجل الصدفة ومخرجات ps). وجود api_key_env كوسيط قائم بذاته موجود بالضبط كي يُعامَل السرّ والإعداد بشكل مختلف: الإعداد ملف قد تلصقه في محادثة لطلب مساعدة، أما .env فلا.
  • اضبط كلا المستويين. "flash افتراضيًا، وpro للصعب" هي كامل قصة التكلفة: معظم الجولات رخيصة، وأنت تصعّد فقط حين يتعثر النموذج بشكل واضح.

الخطوة 3: الوكلاء الفرعيون والمهارات

الوكلاء الفرعيون هم عمّال محدودو النطاق يُنشئهم الوكيل الرئيسي — مثل "ابحث في قاعدة الكود عن كل مستدعٍ لهذه الدالة" — وفي الفوترة بالتوكن يشكّلون أيضًا رافعة للتكلفة، إذ يمكن للعمّال العمل على مستوى flash بينما يفكّر المنسّق (orchestrator) على مستوى pro. أما المهارات فهي ملفات تعليمات يحمّلها الوكيل عند الحاجة، بحيث تُكتب إجراءات النشر أو قواعد كتابة الاختبارات مرة واحدة بدلًا من إعادة شرحها في كل جلسة.

تتيح لك الإصدارات الحالية ضبط ذلك التوجيه صراحةً بدل الاعتماد على حُسن الإعدادات الافتراضية، وهذه كتلة الإعداد التي تستحق الفهم، لأنها هي الفاتورة فعليًا:

[agent]
# planner_model  = "deepseek-pro"    # two-model collaboration: pro plans, flash executes
# subagent_model = "deepseek-pro"    # default tier for spawned workers
# subagent_models = { review = "deepseek-pro", security_review = "deepseek-pro" }
# recovery_model = "deepseek-pro"    # steps in when a turn fails

خريطة المهارات في السطر الثالث هي المفيدة فعليًا. معظم العمل المُفوَّض — ابحث عن هذا، أعد تسمية ذاك، اكتب الاختبار الواضح — عمل بمستوى flash. أما مراجعة الكود أو فحص الأمان فليسا كذلك؛ هما بالضبط المهمتان اللتان ينتج فيهما نموذج رخيص مخرجات واثقة ومقنعة لكنها خاطئة. تسمية المهارات القليلة التي تستحق الطبقة الغالية يمنحك الحكم الجيد حيث يهم، ويُبقي كل شيء آخر رخيصًا — وهذه مقايضة أفضل من اختيار طبقة واحدة لكل الوكلاء الفرعيين.

الخطوة 4: إبقاؤه محدَّثًا وفق جدول

واجهات الوكلاء تتطور بسرعة، والنسخة القديمة تفوّت إصلاحات الأدوات. توجد الآن ميزة مدمجة لهذا، وهي الإجابة الصحيحة الأولى:

reasonix upgrade

مع اختيار المسار (track) في الإعداد:

[cli]
update_channel = "stable"   # stable | preview

إن كنت تفضّل أن يحدث ذلك دون تدخل منك، جدوِله. عندي يعمل دون إشراف، وواجهة CLI حاليًا على الإصدار v1.18.0 دون أن أفكر في الأمر. السكربت أدناه يغلّف npm مباشرة، وهو يستحق القراءة حتى لو استخدمت الميزة المدمجة، لأن استخدام npm update -g بسذاجة داخل مؤقت له نمطا فشل يستحقان الحذر:

#!/usr/bin/env bash
set -euo pipefail
LOG="$HOME/logs/update-reasonix.log"
NPM="$(command -v npm)"

# 1. Lock guard — two overlapping npm runs corrupt the install
exec 9>"${LOG%.log}.lock"
flock -n 9 || { echo "update already running"; exit 0; }

# 2. Log rotation — cron logs grow forever unless you trim them
[ -f "$LOG" ] && tail -n 5000 "$LOG" > "$LOG.tmp" && mv "$LOG.tmp" "$LOG"

echo "before: $("$NPM" list -g reasonix --depth=0 | grep reasonix)" >> "$LOG"
"$NPM" update -g reasonix >> "$LOG" 2>&1
echo "after:  $("$NPM" list -g reasonix --depth=0 | grep reasonix)" >> "$LOG"

اربطه بـ cron أو بمؤقت systemd — كلاهما يعمل. تسجيل الإصدار قبل وبعد أهم مما يبدو: حين يتغير سلوك الوكيل بين ليلة وضحاها، يخبرك السجل إن كان التحديث هو السبب.

استخدامه في مشروع حقيقي

كل ما سبق إعداد عام. ما يجعل واجهة الوكيل CLI مفيدة فعليًا هو طبقة خاصة بكل مشروع، ويحلّ Reasonix الإعداد بترتيب محدد يستحق المعرفة:

flag  >  ./reasonix.toml  >  ~/.reasonix/config.toml  >  built-in defaults

فملف reasonix.toml المُودَع في جذر مستودع ما يصبح تعليمات ذلك المشروع الثابتة، بينما يحتفظ ملفك العام ببيانات الاعتماد وتفضيلاتك الشخصية. بعض الحقول عامة حصرًا وعن قصد — قناة التحديث، تفضيلات CLI — حتى لا يستطيع مستودع استنسخته تغيير طريقة تحديث تثبيتك بصمت. هذا حد منطقي، وهو سبب أن ملف مشروع من مصدر آخر آمن قبوله.

حالة الجلسات والذاكرة أيضًا مقتصرة على كل مشروع، تحت ~/.reasonix/projects/<project>/sessions/. أطلقه من مجلد مشروع بدل مجلدك الرئيسي (home) وستحصل على استمرارية لكل مستودع — يتذكر ما تعلمه عن تلك القاعدة البرمجية آخر مرة بدل أن يبدأ من الصفر. الإطلاق من $HOME يعمل، لكنك تحصل على كومة سياق واحدة غير مُميَّزة، وهو أمر يستحق تجنّبه إن كنت تعمل عبر عدة مستودعات.

ما كنت سأضعه في ملف مشروع، بترتيب تقريبي حسب الفائدة:

  • أوامر البناء والاختبار. السطر الأعلى قيمة على الإطلاق. وكيل يعرف كيف يتحقق من عمله بنفسه يتوقف عن التخمين.
  • خريطة التصعيد — كتلة subagent_models أعلاه، مضبوطة لكل مستودع. مشروع بسطح أمني يريد افتراضيًا مختلفًا عن موقع ثابت.
  • الأشياء التي يجب ألا يفعلها. بوابات النشر، الملفات التي لا يجوز له لمسها أبدًا، "لا تُشغّل هذا على الإنتاج أبدًا." اكتبها مرة واحدة.
  • مهارات لكل ما هو إجرائي — دليل النشر، قائمة تحقق الإصدار — بحيث يعيش الإجراء في المستودع لا في ذاكرتك.

لأمثلة عملية على نوع المشروع الذي يناسبه هذا، فإن تطبيق الدردشة الذاتي الاستضافة، وواجهة النسخ الاحتياطي، وإعادة بناء ووردبريس إلى موقع ثابت جميعها على الشكل نفسه: قاعدة كود محددة، وأمر تحقّق حقيقي، وبوابة قبل أن يُنشر أي شيء.

إضافة: ضعه داخل تطبيق الدردشة الخاص بك

لا يتوجب على الوكيل الطرفي أن يبقى حبيس الطرفية. بما أن Reasonix ليس سوى واجهة CLI على PTY، يمكنك بثه إلى واجهة ويب باستخدام xterm.js واستخدامه من أي جهاز على شبكتك. تطبيق الدردشة الذاتي الاستضافة الخاص بي يفعل ذلك بالضبط — يظهر Reasonix كـ"بوت طرفي" إلى جانب وكلاء الدردشة المعتادين، مع أزرار تشغيل/إعادة تشغيل/إيقاف. كامل الإعداد موثّق في DisPatch: دردشة ذكاء اصطناعي ذاتية الاستضافة.

نقاط يجب الانتباه إليها

  • نماذج التفكير تبدو متوقفة قبل أن تجيب. يبث مستوى pro تفكيره قبل الرد؛ فإذا كان للغلاف أو البوابة المحيطة بالوكيل مهلة خمول قصيرة، تُقتل عمليات التفكير الطويلة في منتصف الطريق. ارفع المهلة، ولا تلم النموذج.
  • لا تضع المفتاح أبدًا في argv. ملف الإعداد (بصلاحية chmod 600) أو ملف بيئة فقط. أعلام سطر الأوامر تتسرب عبر السجل وقوائم العمليات.
  • ثبّت مسار npm في المحدّث. يعمل cron ببيئة PATH ضئيلة؛ وقد يُحلّ npm بشكل مختلف بين الصدفة التفاعلية وcron. اكتب المسار مباشرة أو حلّه صراحة داخل السكربت.
  • اقفل مهمة التحديث. بدون flock، قد يمنحك سجل npm البطيء مع جدولة حريصة تثبيتين عالميين متزامنين في النهاية وواجهة CLI معطوبة.
  • راقب عادة التصعيد. الدفع لكل توكن يبقى رخيصًا فقط إن كان flash هو الافتراضي. إذا شغّلت كل مهمة على pro "احتياطًا"، فقد أعدت اختراع الاشتراك — تتبع الإنفاق خلال الأسبوع الأول.
  • مجلدات الجلسات تكبر. التاريخ الخاص بكل مشروع رائع إلى أن يتراكم لدى وكيل ثرثار أشهر منه؛ نظّف بيانات الجلسات في المجلد النقطي بين الحين والآخر.
  • مخططات الإعداد تتغيّر من تحتك. تحمل هذه الأداة علامة config_version تحديدًا لأن الشكل يتغيّر بين الإصدارات — انتقال بيانات الاعتماد من config.toml إلى خلف api_key_env مثال على ذلك التغيير. إن عجز الوكيل فجأة عن المصادقة بعد تحديث، تحقّق من شكل الإعداد مقابل الوثائق الحالية قبل أن تُعيد توليد مفتاحك.
  • استئناف جلسة قديمة ليس مجانيًا. إعادة فتح محادثة بعد انتهاء نافذة التخزين المؤقت للمُطالبة (prompt-cache) لدى المزوّد يعني إعادة إرسال السياق بالسعر الكامل. توجد إعدادة لتقليم مخرجات الأدوات القديمة عند الاستئناف البارد؛ أبقها مفعّلة. غالبًا ما تكون جلسة جديدة أرخص من إحياء جلسة قديمة.

قراءة ذات صلة: يغطي الدليل الأوسع توصيل DeepSeek في كل مكان توجيه واجهة Claude Code CLI الحقيقية نحو نقطة نهاية DeepSeek المتوافقة مع Anthropic — الفكرة نفسها من الاتجاه المعاكس.


← المزيد من الذكاء الاصطناعي والنماذج المحلية