
أداة OSINT للويب المظلم مدعومة بالذكاء الاصطناعي تستخدم نماذج اللغات الكبيرة (LLMs) لتحسين الاستعلامات، وتصفية نتائج البحث، وإنشاء ملخصات التحقيقات مع واجهة ويب ودعم Docker.
Robin هي أداة مدعومة بالذكاء الاصطناعي لإجراء تحقيقات OSINT في الويب المظلم. تستفيد من نماذج اللغة الكبيرة (LLMs) لتحسين الاستعلامات، وتصفية نتائج البحث من محركات بحث الويب المظلم، وتقديم ملخص للتحقيق.
التثبيت • Robin كـ MCP • استكشاف الأخطاء وإصلاحها • المساهمة • شكر وتقدير

هذه الأداة مخصصة للأغراض التعليمية والتحقيقية القانونية فقط. قد يكون الوصول إلى محتوى معين في الويب المظلم أو التفاعل معه غير قانوني حسب ولايتك القضائية. المؤلف غير مسؤول عن أي إساءة لاستخدام هذه الأداة أو البيانات التي تم جمعها باستخدامها.
استخدمها بمسؤولية وعلى مسؤوليتك الخاصة. تأكد من امتثالك لجميع القوانين والسياسات المؤسسية ذات الصلة قبل إجراء تحقيقات OSINT.
بالإضافة إلى ذلك، يستفيد Robin من واجهات برمجية تابعة لجهات خارجية (بما في ذلك نماذج LLM). توخَّ الحذر عند إرسال استعلامات قد تكون حساسة، وراجع شروط الخدمة لأي مزود واجهة برمجية أو نموذج تستخدمه.
[!NOTE] تحتاج الأداة إلى Tor لإجراء عمليات البحث. يمكنك تثبيت Tor باستخدام
apt install torعلى Linux/Windows(WSL) أوbrew install torعلى Mac. بعد التثبيت، تأكد من أن Tor يعمل في الخلفية.
[!TIP] قدّم مفتاح API الخاص بك إما في ملف
.env(انسخ.env.example) أو كمتغيرات بيئة. مفتاح واحد يكفي: يسرد Robin النماذج لأي مزودين يجده. المفاتيح المدعومة هيOPENAI_API_KEYوANTHROPIC_API_KEYوGOOGLE_API_KEYوMISTRAL_API_KEYوOPENROUTER_API_KEY.بالنسبة لـ Ollama، لا شيء يوضع في ملف
.envالخاص بك. يستخدم Robin افتراضيًاhttp://host.docker.internal:11434، وهو ما يحتاجه تثبيت Docker الموصى به. لا يزال هناك أمران متروكان لك:
- شغّل الحاوية مع
--add-host=host.docker.internal:host-gateway(أمر README يفعل ذلك بالفعل).- اجعل Ollama يستمع على جميع الواجهات، لأنه يرتبط بـ
127.0.0.1افتراضيًا ولا يمكن للحاوية الوصول إلى ذلك. إذا بدأته بنفسك،OLLAMA_HOST=0.0.0.0 ollama serve &. إذا كان يعمل تحت systemd،sudo systemctl edit ollama.service، أضف[Service]وEnvironment="OLLAMA_HOST=0.0.0.0"، ثمsudo systemctl daemon-reload && sudo systemctl restart ollama.راجع TROUBLESHOOTING.md إذا لم يظهر بعد ذلك.
لأي مزود آخر متوافق مع OpenAI (LM Studio، llama.cpp، Groq، إلخ)، استخدم موسّع 🔌 Custom API Provider في الشريط الجانبي — لا حاجة لتغييرات في
.env. أدخل عنوان URL الأساسي، ومفتاح API اختياري، واسم نموذج اختياريًا إذا كان المزود لا يعرض/v1/modelsللاكتشاف التلقائي.
docker pull apurvsg/robin:latest
.env في المجلد الذي تشغّل منه، مع مفتاح API الخاص بك فيه (راجع .env.example). أنشئه قبل التشغيل الأول: إذا لم يكن موجودًا، يقوم Docker بتركيب مجلد فارغ مكانه ويبدأ Robin بدون مفاتيح.touch .env # then add your API key to it
docker run --rm \
-v "$(pwd)/.env:/app/.env" \
--add-host=host.docker.internal:host-gateway \
-p 8501:8501 \
apurvsg/robin:latest
[!TIP] للحفاظ على التحقيقات المحفوظة عبر عمليات إعادة تشغيل Docker، اربط وحدة تخزين مسماة أو مجلدًا محليًا عند
/app/investigations.تعمل وحدة التخزين المسماة بنفس الطريقة على كل نظام تشغيل ولا تحتاج إلى مسار مضيف. وهي أيضًا وحدة التخزين التي تربطها أوامر الوكيل في Robin كـ MCP، لذا تعرض الواجهة نفس التقارير التي حفظها وكيلك:
docker run --rm \ -v "$(pwd)/.env:/app/.env" \ -v robin-investigations:/app/investigations \ --add-host=host.docker.internal:host-gateway \ -p 8501:8501 \ apurvsg/robin:latestأو اربط مجلدًا محليًا، إذا كنت تريد ملفات JSON على قرصك الخاص:
docker run --rm \ -v "$(pwd)/.env:/app/.env" \ -v "$(pwd)/investigations:/app/investigations" \ --add-host=host.docker.internal:host-gateway \ -p 8501:8501 \ apurvsg/robin:latestتُحفظ التحقيقات في مجلد
investigations/في دليل العمل الخاص بك ويمكن تحميلها من لوحة Past Investigations في الشريط الجانبي.أنشئ المجلد بنفسك أولاً (
mkdir -p investigations) حتى لا ينشئه Docker كمستخدم root. تعمل الحاوية بمعرّف المستخدم UID 1000، وعلى Linux يكون المجلد المملوك لشخص آخر للقراءة فقط بالنسبة لها — يطبع Robin تحذيرًا واحدًا ويفشل الحفظ، رغم أن التحقيق لا يزال يعمل. إذا واجهت ذلك، أو لم يكن معرّف المستخدم الخاص بك 1000، استخدم وحدة التخزين المسماة أعلاه، أو راجع Saved investigations fail with permission denied on Linux.
http://localhost:8501لتشغيل بنائك الخاص بدلاً من الصورة المنشورة، استنسخ المستودع وابنِه:
docker build -t robin .
ثم استخدم نفس أوامر التشغيل مع robin بدلاً من apurvsg/robin:latest:
docker run --rm \
-v "$(pwd)/.env:/app/.env" \
--add-host=host.docker.internal:host-gateway \
-p 8501:8501 \
robin
docker run --rm \
-v "$(pwd)/.env:/app/.env" \
-v "$(pwd)/investigations:/app/investigations" \
--add-host=host.docker.internal:host-gateway \
-p 8501:8501 \
robin
http://localhost:8501