دوز مباشرة للمحتوى الرئيسي
دروس فالذكاء الاصطناعي

بني رفيق بحث محليّاً فـ X باستعمال Gem Search

تعلّم كيفاش تشغّل Gem Search، تربط إضافة Chrome ديالو، تجمع منشورات X اللي باينة، تحدّد السرديات اللي كاتبان، تفحص الأدلة، تخصّص المواضيع، وتزيد اختيارياً أربعة مراجعين من Grok، مع بقاء محرّك البحث وقاعدة البيانات فالحاسوب ديالك.

بني رفيق بحث محليّاً فـ X باستعمال Gem Search

شنو كيدير Gem Search

Gem Search هو رفيق بحث مفتوح المصدر، محلي أولا، مخصص لـ X. كيزيد عنكبوت متحرك فوق Chrome ولا Chromium، كيفحص المنشورات اللي باينة فالتبويب المفتوح، وكيرسل لقطات صغار لمحرك بحث خدام فالحاسوب ديالك.

كاشف JEV المحلي كينحي المنشورات المكررة وكايجمع المواضيع اللي كتعاود، وروابط المشاريع، والـ cashtags، وعناوين Solana الصحيحة، والعبارات الجديدة المكونة من جوج كلمات. زاحف محدود يقدر يتبع روابط HTTP ولا HTTPS العمومية، فحين لوحة التحكم كتحافظ على المصادر، والفحوصات، والثغرات، والنشاط، والنتائج القابلة للتصدير.

Gem Search مصمم للتحقيق، ماشي للثقة الآلية. أي مؤشر، ولا نقطة، ولا نتيجة إطلاق نقي ما كتثبتش بأن المشروع آمن، أصلي، ولا غالبا غادي تزيد قيمتو.

الإضافة كتقرا DOM ديال الصفحة الحالية. ماشي خدمة firehose ديال X، وما كتتفاعلش مع المنشورات ولا الحسابات، وما كتقدرش تراقب التطبيقات الأخرى ولا التبويبات اللي خدامة فالخلفية.

الميزات الرئيسية

  • رفيق واضح فالمتصفح: العنكبوت المتحرك كيميز المنشور اللي كيفحصو، وكيعطي عدادات ديال اللقطات، وأزرار التوقيف المؤقت، والإخفاء، والتمرير التلقائي الاختياري فالتبويب الباين.
  • اكتشاف الإشارات محليا: JEV كايجمع المواضيع، وكيكتاشف الرموز وعناوين Solana، وكيقلب على العبارات المتكررة، وكيقيس النمو خلال ست ساعات، وكايفحص تنوع المؤلفين والنصوص المكررة.
  • مسار الأدلة: النتائج كاتحتافظ بالمنشورات، والروابط العمومية، والفحوصات، والمعلومات المجهولة، والأسباب ديال النماذج اللي وراها.
  • زاحف محدود: الصفحات العمومية كاتتحفظ لمدة 30 دقيقة، والأهداف ديال الشبكات الخاصة كاتتحجب.
  • طابور محلي دائم: حتى لـ 200 منشور ملتاقط يقدرو يبقاو فالإضافة إلا ما كانش الخادم متاح، وكايتبعثو من بعد ما كايرجع الاتصال.
  • مراجعة Grok اختيارية: أربعة ديال المراجعين المتخصصين فالأدوار كايحللو الأدلة المقدمة عبر API الرسمي ديال xAI ملي كتفعلها صراحة.
  • تخصيص محلي: تقدر تحدد حتى لـ 40 نمط ديال المواضيع بالإنجليزية ولا بالروسية فملف إعدادات محلي.
  • تصدير البحث: لوحة التحكم كاتدعم تصدير JSON وكبسولات اكتشاف SVG كاينشئها المتصفح.

فهم البنية

المسار العادي ديال البحث واضح:

  1. الإضافة كاتراقب المنشورات اللي باينة فتبويب X الظاهر.
  2. اللقطات كايدخلو لطابور دائم فالإضافة.
  3. API مربوط بـ localhost كايرسلهم للمحرك المحلي.
  4. JEV كاينحي التكرار وكاايجمع الإشارات.
  5. الزاحف كاايجيب المصادر العمومية المحدودة.
  6. الفحوصات المحلية ديال الأدلة كااتدار قبل أي مراجعة اختيارية بالنموذج.
  7. لوحة التحكم كااتعرض النتائج، والمصادر، والأسباب، والمعلومات المجهولة.

رمز الربط ديال الإضافة يقدر يرسل اللقطات ويقرا حالة الماسح. ما يقدرش يطلق التوكنات، والإضافة ما فيها لا كود ديال إجراءات الحسابات لا مفتاح API ديال xAI.

المتطلبات

قبل ما تثبت Gem Search، وجد هاد الحوايج:

  • Python 3.11 ولا أحدث.
  • Chrome ولا متصفح آخر مبني على Chromium.
  • macOS، ولا Linux، ولا Windows عبر WSL2 بالنسبة للخادم الخلفي.
  • Git باش تنسخ المستودع.

Node.js 22 ولا أحدث مطلوب غير للمجموعة الكاملة ديال الاختبارات والوحدة الاختيارية ديال Solana. الخادم الخلفي الأساسي ديال البحث والإضافة المفكوكة ديال المتصفح ما محتاجينش لبناء npm.

ثبت وشغل المحرك المحلي

نسخ المستودع، دخل للمجلد ديالو، صايب ملف البيئة المحلي، وشغل الخادم الخلفي:

git clone https://github.com/h100envy/gem-search.git
cd gem-search
cp .env.example .env
python3 app.py

خلي هاد التيرمينال خدام. خاص لوحة التحكم تولي متاحة فـ http://127.0.0.1:8787.

جرب العرض التجريبي الخيالي أولا

قبل ما تربط حساب X، حل http://127.0.0.1:8787/spider-demo. هاد الصفحة كتستعمل نفس محرك العنكبوت فوق بطاقات خيالية، وما كااتدير حتى نداءات API، وما كااتجمع والو.

لوحة التحكم فيها حتى هي عملية مسح تجريبية مستقلة كااتجرب مسار البحث بمشاريع اصطناعية مميزة بوضوح.

حمل وربط إضافة Chrome

  1. حل لوحة التحكم المحلية ومشي لـ Connections.
  2. نسخ رمز الربط المحلي.
  3. حل chrome://extensions فـ Chrome ولا Chromium.
  4. فعل Developer mode.
  5. اختار Load unpacked.
  6. اختار المجلد extension/ ديال المستودع.
  7. حل النافذة المنبثقة ديال Gem Search من شريط أدوات المتصفح.
  8. لسق رمز الربط واختار Connect.

هاد الربط كايوصل الإضافة بالـ API المحلي. خاص محرك البحث يبقى خدام طول المدة اللي كاتستعمل فيها الإضافة.

دير أول جلسة بحث

  1. حل موجز X، ولا صفحة البحث، ولا صفحة بروفايل.
  2. حل النافذة المنبثقة ديال إضافة Gem Search.
  3. اختار Release spider on this tab.
  4. تمشى فالصفحة بشكل عادي والعنكبوت كيفحص المنشورات اللي باينة فالمجال المرئي.
  5. راقب عداد اللقطات ووقف العنكبوت مؤقتا ولا خبيه ملي تحتاج.
  6. رجع للوحة التحكم المحلية وحل Discovery.
  7. فحص النتائج المجمعة، والمنشورات المصدرية، والصفحات المربوطة، والفحوصات المحلية، والادعاءات اللي محددة صراحة كمجهولة.
  8. صدر النتائج المفيدة بصيغة JSON باش ترجع ليها فالبحث من بعد.

التمرير التلقائي اختياري. التبويبات اللي خدامة فالخلفية ما كااتجمعش المنشورات وما كااتمررش تلقائيا. إلا خرج المحرك المحلي من الخدمة، الإضافة تقدر تحتافظ حتى لـ 200 لقطة وتبعثهم من بعد ما كااينجح الاتصال مرة أخرى.

استكشف الإشارات الجديدة

Gem Search يقدر يخلق مؤشرات منفصلة للتّيكيرات، وعناوين العقود الصحيحة ديال Solana، والعبارات المكرّرة اللي ما كتنتميش لموضوع موجود.

التّيكيرات

كل $CASHTAG مكتاشف يقدر يولي مؤشر فيه الكتّاب والمنشورات المرتابطة به. الأصول الكبيرة بحال $BTC و$SOL و$USDC، وحتى السلاسل اللي كتشبه للأثمان بحال $100، كيتخطّاو. المؤشر يقدر يحلّ بحث مباشر فـ X.

عناوين Solana

العنوان المرشّح كيبقى غير إلا تقدر يفكّ لترميز مفتاح حقيقي ديال 32 بايت. هاد الشي كينقص من النتائج الكاذبة اللي كيجيو من كلمات عشوائية وطويلة. المؤشر الناتج يقدر يربط بالعنوان فـ Solscan.

السرديات الجديدة

العبارة الناشئة هي عبارة من جوج كلمات كتعاودات من طرف ثلاثة كتّاب مختلفين على الأقل خلال الساعات الستة الأخيرة، وكتلقاها خارج المواضيع المضبوطة. الصياغة المتداخلة من جملة وحدة كتحسب مرة وحدة.

مؤشرات النمو

كل مؤشر يقدر يبيّن عدد الإشارات ديالو خلال الساعات الستة الأخيرة مقارنة بالوتيرة ديال 18 ساعة اللي قبل، وعدد الكتّاب الجدد، والوقت اللي لاحظاتو فيه العنكبوت أول مرة. هاد القياسات كتوصف غير عيّنة التصفّح ديالك، وماشي جميع النشاط فـ X.

فـ Discovery، صفّي حسب نوع الإشارة ورتّب حسب الأسرع نمواً أو الأحدث أولاً أو أكثر الكتّاب. حلّ المؤشر باش تشوف سرعة الإشارة والمنشورات الأصلية ديالو.

شغّل الجولة التجريبية ديال الإشارات

المستودع فيه عرض تجريبي فـ الطرفية كيدوز منشورات خيالية عبر API الحقيقي ديال الإضافة، وكيطبع الالتقاطات، وأحداث المحرّك، والمؤشرات، والنمو، والاختبارات.

شغّل المحرّك فطرفية:

python3 app.py

وفطرفية ثانية، شغّل الجولة:

python3 scripts/spider_demo.py

تسنى تقريباً عشرة ديال الثواني حتى تدوز دورة العنكبوت، ومن بعد حلّ لوحة القيادة. فـ Discovery، بدّل بين فلاتر التّيكيرات والسرديات الجديدة ورتّب حسب أسرع نمو.

استعمل الأمر التالي لجولة أسرع:

python3 scripts/spider_demo.py --speed 2

باش تحمّل عيّنة بصمت، استعمل:

python3 scripts/sample_signals.py

المنشورات، والحسابات، والتّيكير، والعنوان الموجودين فالعينة مخترعين ومعلّمين كعينات.

خصّص كاشف المواضيع

نسخ ملف المواضيع النموذجي وعدّل الملف المحلي الجديد:

cp topics.example.json topics.json

الملف كيدعم حتى لـ 40 موضوع مكتوبين كتعبيرات منتظمة ما كتفرّقش بين الحروف الكبيرة والصغيرة. عاود شغّل الواجهة الخلفية من بعد التعديلات.

إلا كان الملف غير صالح، Gem Search كيتجاهلو، كيسجّل تحذير، وكيكمّل بالمواضيع المدمجة. ملف topics.json المخصّص كيبقى فالحاسوب ديالك.

فعّل أربع زوايا اختيارية ديال Grok

Gem Search خدام بلا Grok. باش تفعّل المراجعة بمساعدة النموذج، زيد إعدادات xAI ديالك فملف .env المحلي:

GROK_ENABLED=1
XAI_API_KEY=your_local_api_key
GROK_MODEL=grok-4.7
GROK_DAILY_CALLS=12

عاود شغّل المحرّك من بعد ما تحفظ الملف. المقاعد البحثية المحلية الأربعة كيسولو أسئلة مختلفة:

  • Lookout: واش كاينة إشارة مهمّة فالعينة المرصودة؟
  • Maker: شنو الدليل المنتج أو التقني الموجود فعلاً؟
  • Skeptic: شنو المتناقض أو الخطير أو اللي ما متحقّقش منو؟
  • Runner: واش كاين دليل كافي باش نحقّقو دابا؟

المراجعة كتبدا غير من بعد ما يلاحظ المحرّك أربعة كتّاب مختلفين على الأقل. كل مراجعة كاملة كتدير أربعة طلبات API. مع الحدّ الافتراضي ديال 12 طلب خلال 24 ساعة متحرّكة، ما كيتساعوش أكثر من ثلاث مراجعات كاملة ضمن الحد، بما فيها الطلبات الفاشلة.

الأدلة ومدخلات النموذج المتطابقة كتعيد استعمال النتائج المخزّنة مؤقتاً لمدة 24 ساعة. الطلبات فيها مقتطفات محدودة، والمخرجات محدودة فـ 700 رمز. الحد كيتحكّم فعدد الطلبات، ولكن ما كيضمنش فاتورة ثابتة؛ الثمن كيعتمد على خطة xAI ديالك.

إلا كان Grok مفعّل، المقتطفات المجمّعة كترسل لـ api.x.ai للتحليل. المفاتيح كاتبقى فالواجهة الخلفية. بلا Grok، تجميع الإشارات والاختبارات المحلية كيبقاو خدامين كاملين بلا طلبات للنموذج.

النموذج غير المتاح، أو الحد المستهلك، أو الجواب غير الصالح، أو الاستشهاد المخترع، ما يقدروش يتحسبو كنتيجة ناجحة. مخرجات النموذج ما تقدرش تنفّذ الكود، ولا تتصفّح بوحدها، ولا تتحكّم فالمحافظ. ملف README كيشير حتى هو إلى أن المهايئ عندو تغطية اختبارات وهمية، ولكن ما تمش التحقّق من طلب حقيقي مؤدّى عليه فداك checkout.

صايب وشارك كبسولة اكتشاف

باش تحوّل نتيجة لسجل بصري مستقل، حلّ مشروع فـ Discovery واختار Discovery capsule. اختار ستايل Aurora أو Daylight، عاين البطاقة، وحمّل SVG.

الكبسولة تقدر تشمل الإشارات، والكتّاب المرصودين، والاختبارات المحلية، وحالة Grok، وحتى ثلاثة عناوين مصدر، وطابع زمني UTC. كتتولّد كاملة فالمتصفّح بلا طلب API ولا منشور اجتماعي أوتوماتيكي.

بيانات الدخول، وسلاسل البحث، والأجزاء الإضافية كيتحيدو من عناوين المصادر المعروضة. راجع المحتوى الظاهر قبل المشاركة، حيث الدليل الناقص كيبقى ناقص والنتائج التجريبية كيبقاو معلّمين كتجارب.

استعمل مصادر إدخال إضافية

Gem Search ما محدودش فالتقاطات المتصفّح. يقدر يستورد التقاطات JSON حسب صيغة البيانات الموثّقة فالمستودع، ومجلد data/inbox/ يقدر يستقبل إدخالات من جامعين خارجيين.

باش تفعّل ماسح السرديات المجاني ديال Hacker News ومراقب صندوق الإدخال، شغّل المحرّك فـ autopilot:

python3 app.py --autopilot

اهتمام Hacker News كيتعلّم بوحدو بعيداً عن التقاطات X. الولوج الرسمي لبحث X الأخير باقِي اختياري ومؤدّى عليه، وENABLE_PAID_X=0 هو الإعداد الافتراضي.

نصائح متقدمة للاستعمال

  • بدا بلا خدمات مخلّصة: التجميع المحلي والتأكد من الأدلة ما كيحتاجوش مفتاح xAI ولا X API مخلّص.
  • شوف المصادر، ماشي غير الخلاصات: حلّ المنشورات والصفحات العمومية المرتابطة، وقارنها مع الفحوصات المحلية والحقول المجهولة.
  • اعتبر السرعة مرتبطة بالعينة: النمو السريع كيعكس المنشورات اللي باينة فجلسة التصفح ديالك، ماشي الشبكة كاملة.
  • رد بالك من السلوك المنسّق: ثلاثة حسابات منسّقة يقدرو يخلقو عبارة ناشئة، لذلك تنوّع المؤلفين غير مؤشر وماشي دليل قاطع.
  • عاود استعمل الذاكرة المؤقتة: الصفحات اللي تجمعات كتتخزّن لمدة 30 دقيقة، ومراجعات Grok المتطابقة كتتخزّن لمدة 24 ساعة.
  • خلي الجمع مقصود: استعمل التمرير العادي، ولا فعّل التمرير التلقائي غير ملي تحتاجو، ووقّف العنكبوت ملي الصفحة الحالية ما عندهاش علاقة.
  • تذكّر حدود الكاشف: كل جولة كتحتافظ بحد أقصى بـ 10 رموز، و10 عناوين، وخمس عبارات، مرتبة من الأقوى للأضعف.
  • خلي الإشارات المكتاشفة بعيدة على أتمتة الإطلاق: الرموز والعناوين والعبارات الناشئة ما كيدخلوش أبداً لقائمة الإطلاق، حتى ملي تكون SPIDER_ALLOW_LAUNCH=1.

الماسح المستضاف وأدوات Telegram

المشروع كيشغّل حتى أدوات مجانية فـ gemsearch.fun. هادو مختلفين على سيرورة البحث المحلية فالمتصفح، وما كيحتاجوش ربط المحفظة باش يديرو المسح.

  • الماسح: كيفحص عنوان عقد على Solana باش يلقى الصلاحيات، وتركيز الحيازة، وحصة المطوّر، والإطلاقات السابقة فـ pump.fun، والسيولة ولا تقدم المنحنى، ومعلومات بروفايل Dex، والنسخ المطابقة للرمز.
  • أشعة X على الويب: كيبين المشترين فبلوك الإطلاق، ومصادر التمويل المشتركة، والتحويلات بين الحائزين، مع روابط المعاملات.
  • مؤشر الحزم: كيصنّف الإطلاقات الجديدة ديال pump.fun حسب عدد المشترين الآخرين فبلوك الإطلاق.
  • سجل المجلس: كينشر الأحكام المخزنة وفحوصات النتائج اللاحقة، ماشي أمثلة مختارة يدوياً.
  • بوت Telegram: كيقبل عناوين العقود وكيعاون فالمسح، وأشعة X، والمراقبة، وتتبع الحسابات، وأوامر المجموعات.

الطاقم أو المجموعة أو الحزمة كتمثل نمط تمويل على السلسلة، وماشي دليل أن المحافظ كتنتمي لهوية وحدة. النقطة العالية فالمسح كتعني إطلاقاً ملاحظاً أنظف، وماشي تنبؤاً بالأداء المستقبلي.

إمكانيات الإطلاق الاختيارية

Gem Search فيه مكوّنات مرتبطة بالإطلاق، ولكن هادو منفصلين على البحث العادي. صفحة الإطلاق المستضافة تقدر تنشئ عملة pump.fun من محفظة المتصفح، بينما المشغّل المحلي التجريبي القديم باقي اختياري ومضبوط افتراضياً على التشغيل التجريبي بلا تنفيذ.

سيرورة الإطلاق المستضافة كتنشئ مفتاح mint فالمتصفح، وكتخزّن الصورة والبيانات الوصفية فـ IPFS، وكتبني معاملة فيها المستخدم هو الدافع والمالك، وكتبعثها غير ملي كتطابق المعاملة الموقّعة مع اللي بناه الخادم بايت ببايت. Gem Search كيوضح أنه ما كياخذ حتى رسم من المنصة، وما كيراجعش العملات المطلقة ولا كيضمنها.

بالنسبة للوحدة المحلية الاختيارية، السقف الموثّق هو 0.025 SOL لكل محاولة وخمس محاولات خلال أي 24 ساعة متحركة. pump.fun مدعوم عبر منفّذ PumpPortal المحلي، بينما منصة أخرى فـ Solana كتحتاج محوّل launch-bridge متوافق مع HTTPS. السلاسل الأخرى ما مدعوماش فسياسة الميزانية الحالية ديال SOL.

شغّل الاختبارات وحزّم الإضافة

ثبّت اعتمادات Node، وشغّل اختبارات Python وJavaScript، وحزّم الإضافة بهاد الأوامر:

npm ci --ignore-scripts
python3 -m unittest discover -s tests -v
npm test
python3 scripts/package_extension.py

سكريبت الحزم كيكتب dist/gem-search-extension.zip. الأرشيف فيه غير أصول الإضافة. فكّ الضغط عليه وحمّل المجلد المفكوك كإضافة غير معبّأة؛ راه ماشي حزمة ديال Chrome Web Store.

الاختبارات الآلية كتشمل التحقق، واستثناءات المسارات، وإزالة التكرار، والسرديات، والتخزين المؤقت ديال Grok والحدود المسموح بها، ومعالجة الأعطال، ومنع الشبكات المحلية، واسترجاع الطوابير، وحواجز المعاملات الاختيارية. ما كتضمنش التوافق مع كل تصميم مستقبلي ديال X، لذلك السلوك فالمتصفح الحقيقي باقي كيحتاج اختبار يدوي.

الخلاصة

Gem Search كيجمع بين واجهة باينة فوق المتصفح، وكاشف إشارات محلي، وزاحف محدود، ومسار دائم للأدلة، ومراجعة اختيارية عبر Grok. بدا بالعرض التجريبي الخيالي، وربط الإضافة غير المعبّأة، وجمع غير المنشورات اللي كتقصد تشوف، وقيّم كل نتيجة من خلال مصادرها والمعلومات المجهولة ديالها، وما تعتبرش الإشارة خلاصة نهائية.

للتفاصيل ديال التنفيذ، راجع وثائق البنية فالمستودع، ووثائق الخصوصية، ودليل المساهمة.