المهارات

REA: هندسة عكسية للملفات التنفيذية الأصلية وتطبيقات Electron وتجميعات .NET ومواقع الويب بواسطة الوكلاء

الأداة الأنسب لتمكين الوكيل من التحليل العكسي للملفات التنفيذية الأصلية وتطبيقات JavaScript/Electron وتجميعات .NET ومواقع الويب عبر خادم MCP؛ وقبل الاستخدام يجب التأكد من متطلبات إصدار Node.js (22.x ≥22.23.4 أو 24.x ≥24.22.1 أو 26.12.1+)، مع العلم أن setup يعدّل إعدادات الوكيل وأن التحليل الأصلي يعتمد على Hopper/Ghidra/IDA المثبتة مسبقًا.

Official source · morluto/rea

Install

npx rea-agents setup

لمن هذه الأداة

تقدّم REA ("Reverse Engineer Anything") إمكانيات الهندسة العكسية إلى الوكلاء (agents) عبر خادم MCP: فهي تغطي الملفات التنفيذية الأصلية (native binaries)، وتطبيقات JavaScript/Electron، وتجميعات .NET، وسلوك مواقع الويب. وهي مناسبة للمستخدمين الذين يحتاجون إلى تحليل ملف تنفيذي أو تطبيق Electron أو موقع ويب مباشرةً داخل المحادثة.

المتطلبات: يحتاج جهازك إلى Node.js 22.x (>=22.23.4) أو 24.x (>=24.22.1) أو 26.12.1+، بالإضافة إلى npm. للتحليل الأصلي، يمكنك استخدام نسخة Hopper أو Ghidra أو IDA المثبتة لديك مسبقًا، ويمكن لـ setup أيضًا تثبيت Hopper بعد موافقتك؛ أما تحليل JavaScript و.NET الثابت فلا يحتاج إلى محرك أصلي. لإجراء تحليل JavaScript/Electron الثابت على Linux، يجب أن يكون لديك أمر ps متوافق مع procps ضمن PATH.

يمكن استخدام REA مع أي وكيل يدعم خوادم MCP المحلية؛ وتشير الوثائق الرسمية إلى أن setup يدعم Claude Code وCodex وCursor وGemini CLI وGrok Build وغيرها. لم تذكر الأدلة أنظمة التشغيل المدعومة ولا تفاصيل صيغ الملفات المدعومة، لذا يُنصح بالتحقق من المستودع الرسمي قبل الاستخدام.

أول تجربة في 3 دقائق

المسار الرئيسي الموصى به رسميًا هو تشغيل setup مباشرةً عبر npx:

  1. تأكد من تثبيت Node.js وnpm بالمتطلبات المحددة (وعلى Linux تأكد أيضًا من وجود ps في PATH).
  2. شغّل في الطرفية:
npx rea-agents setup
  1. سيطلب منك setup اختيار الوكيل الذي تريد إعداده، ويعرض التغييرات التي سيجريها ويطلب موافقتك؛ وبعد التأكيد سيضيف خادم MCP الخاص بـ REA وتعليمات سير العمل المرافقة، وينشئ نسخة احتياطية من الإعدادات الحالية.
  2. أعد تشغيل الوكيل، وستصبح REA قابلة للاستدعاء.

يمكنك بدلًا من ذلك التثبيت عالميًا عبر: npm install --global rea-agents، ثم تشغيل setup بعدها؛ لكن هذا أسلوب بديل ذكرته الوثائق الرسمية، ويبقى المسار الرئيسي هو npx rea-agents setup.

لأول تجربة، يُنصح باختيار ملف تنفيذي محلي تملكه ومنخفض القيمة/المخاطر لمهمة تحليل للقراءة فقط، مثل أن تطلب من الوكيل وصف بنية الملف ورموزه المُصدَّرة (exported symbols). أسماء الأدوات الفعلية وشكل المخرجات تعتمد على الأدوات المتاحة داخل الوكيل، ولم تسرّد الأدلة ذلك بندًا بندًا. ملاحظة: يقوم setup نفسه بتعديل ملفات إعدادات الوكيل المختار (وتشير الوثائق إلى أنه ينشئ نسخة احتياطية)، فاقرأ التغييرات المعروضة قبل الموافقة؛ وإذا اعتمد التحليل الأصلي على Ghidra/IDA فيتطلب تثبيتها لديك مسبقًا، والموافقة على تثبيت Hopper إجراء يغيّر النظام. لم توضّح الأدلة أي العمليات ستقرأ الملف التنفيذي أو تشغّله أثناء التحليل، وهذا أمر مجهول.

حالات الاستخدام

الحالة الأولى: تحليل تجميعة .NET محلية. أرسل للوكيل مهمة: "استخدم REA لتحليل تجميعة .NET باسم MyApp.exe واذكر الأنواع والدوال الرئيسية". هذه الحالة تعتمد على تحليل .NET الثابت، والذي لا يحتاج وفق الوثائق الرسمية إلى محركات أصلية مثل Hopper/Ghidra/IDA، ولا يعتمد على ps من procps. النتيجة المتوقعة أن يقدّم الوكيل، بالاستعانة بأدوات MCP الخاصة بـ REA، وصفًا لبنية التجميعة؛ ولم تُظهر الأدلة مستوى تفصيل المخرجات.

الحالة الثانية: تحليل تطبيق Electron. السيناريو: تريد فهم السلوك الداخلي لتطبيق Electron. أرسل للوكيل: "استخدم REA لتحليل JavaScript الخاص بهذا التطبيق المبني على Electron". هذه الحالة تعتمد على تحليل JavaScript الثابت؛ وعلى Linux يجب أولًا التأكد من وجود ps متوافق مع procps في PATH. النتيجة المتوقعة هي نتائج تحليل سكربتات التطبيق. أما المهام المشابهة التي تمس الأجزاء التنفيذية الأصلية فستستخدم Ghidra/IDA/Hopper المثبتة لديك أو Hopper المثبت بعد موافقتك.

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

  • الآثار الجانبية للإعداد: يعدّل setup ملفات إعدادات الوكيل المختار ويضيف تعليمات سير العمل، وتشير الوثائق الرسمية إلى إنشاء نسخة احتياطية من الإعدادات الحالية؛ وتثبيت Hopper يتطلب موافقتك.
  • بيئة التشغيل: تتطلب إصدارات محددة من Node.js وnpm؛ ويحتاج تحليل JavaScript/Electron الثابت على Linux إلى ps متوافق مع procps.
  • اعتماد التحليل الأصلي: يستخدم نسخة Hopper أو Ghidra أو IDA المثبتة لديك؛ ويمكن لـ setup تثبيت Hopper بعد موافقتك.
  • متطلبات العميل: يجب أن يدعم الوكيل خوادم MCP المحلية؛ وبعد الإعداد يجب إعادة تشغيل الوكيل.
  • معلومات غير مؤكدة: لم توضّح الأدلة الرسمية ما إذا كان التحليل يقرأ/يكتب ملفات المستخدم، أو ينفّذ أوامر، أو يصل إلى الشبكة؛ كما لم تُذكر في الأدلة نطاق لغات النصوص والملفات التنفيذية المدعومة ولا أنظمة التشغيل المدعومة. إذا كانت لديك مخاوف أمنية قبل الاستخدام، فتحقق من هذه السلوكيات في المستودع الرسمي.