تخطّ إلى المحتوى
AISI
𝕏
دليل إرشادي

دليل تثبيت واستخدام OpenHands لمراجعة الكود تلقائياً

تعلّم كيفية تثبيت OpenHands وربطه بـ GitHub لمراجعة طلبات السحب تلقائياً باستخدام الذكاء الاصطناعي.

14 دقائق قراءة AIDevOps

مراجعة الأكواد البرمجية بالذكاء الاصطناعي

مراجعة طلبات السحب (Pull Requests – PRs) هي واحدة من أهم الخطوات في دورة حياة تطوير البرمجيات لضمان جودة الكود، لكنها غالباً ما تكون بطيئة وتستهلك وقتاً طويلاً من كبار المطورين. OpenHands (المعروف سابقاً بـ OpenDevin) هو أداة مفتوحة المصدر تستخدم الذكاء الاصطناعي للعمل كمطور مساعد أو “مراجع كود” آلي. في هذا الدليل، سنتعرف على كيفية تثبيته وربطه بـ GitHub لأتمتة عملية المراجعة.

ما هو OpenHands؟

OpenHands ليس مجرد أداة لإكمال الكود (مثل Copilot)، بل هو وكيل ذكي (AI Agent) مستقل. يمكنه قراءة الكود، تشغيل بيئة معزولة (Sandbox)، اختبار التغييرات، وتقديم تعليقات دقيقة حول الأخطاء المنطقية أو اقتراحات لتحسين الأداء مباشرة على مستودع الكود الخاص بك.

خطوات التثبيت (محلياً أو على خادم)

يعتمد OpenHands بشكل كبير على Docker لتشغيل بيئات آمنة لاختبار الأكواد. لتشغيله:

  1. تأكد من تشغيل Docker Desktop (أو خدمة Docker على خادم لينكس).
  2. افتح سطر الأوامر ونفذ أمر التحميل والتشغيل السريع:

docker run -it --rm 
  -v /var/run/docker.sock:/var/run/docker.sock 
  -v ~/.openhands-workspace:/workspace 
  -p 3000:3000 
  ghcr.io/all-hands-ai/openhands:main

ملاحظة: تمرير مسار docker.sock ضروري لكي يتمكن الوكيل من إنشاء حاويات صغيرة لاختبار الكود (Sandboxing). بعد انتهاء التحميل، افتح http://localhost:3000 للوصول لواجهة الاستخدام.

الربط مع GitHub وأتمتة الـ Pull Requests

الفائدة الحقيقية تظهر عند ربط OpenHands بمستودع الأكواد (GitHub):

1. إعداد مفتاح GitHub Token

  • اذهب إلى حسابك في GitHub، ثم Settings -> Developer settings -> Personal access tokens.
  • أنشئ رمزاً (Token) جديداً بصلاحيات قراءة وكتابة للمستودعات (Repo Scope).
  • في إعدادات واجهة OpenHands، أدخل هذا الرمز.

2. تكوين نموذج الذكاء الاصطناعي

OpenHands يحتاج لنموذج قوي ليفهم الكود. يمكنك استخدام مفتاح OpenAI (GPT-4o) أو Anthropic (Claude 3.5 Sonnet)، وهما الأفضل حالياً في البرمجة. إذا كنت تبحث عن بديل مجاني ومحلي، يمكنك ربطه بـ Ollama (باستخدام نماذج مثل deepseek-coder)، على الرغم من أن الأداء سيكون أقل قليلاً.

3. بدء عملية المراجعة

من داخل واجهة OpenHands، قم بإدخال رابط المستودع ورقم طلب السحب (PR Number). يمكنك إعطاؤه تعليمة (Prompt) مثل:

“قم بمراجعة طلب السحب رقم #45. ركز على اكتشاف ثغرات الأمان المحتملة، وتأكد من أن الكود يتبع معايير PEP8 في بايثون. اكتب تعليقاتك مباشرة على الأسطر المعنية في GitHub.”

سيقوم الوكيل بقراءة الكود المتغير (Diff)، تحليله، وسيقوم بإدراج تعليقات برمجية (Comments) في واجهة GitHub كأنه مطور بشري من فريقك.

الخلاصة

دمج OpenHands في سير العمل اليومي يسرع دورة تسليم البرمجيات بشكل كبير. من خلال تفويض مهمة “المراجعة الأولية واكتشاف الأخطاء النمطية” للذكاء الاصطناعي، يتفرغ المهندسون البشريون لمراجعة المنطق المعماري المعقد للمشروع.