العودة إلى مركز الوثائق

الخدمات المساعدة

8 خدمات خلفية معيارية تشغّل قدرات Aura Work

8
خدمات مساعدة
Node.js
لغة البرمجة
IPC+HTTP
آلية التواصل

الخدمات المساعدة (Sidecars) هي عمليات Node.js مستقلة تديرها نواة Tauri. كل خدمة تعمل في مساحة عملية منفصلة مع دورة حياة مستقلة، وتتواصل عبر IPC أو HTTP. توفر هذه الخدمات قدرات معزولة وآمنة يمكن لمحرك الوكيل استدعاؤها.

لماذا Sidecars؟

هذه الهيكلية توفر عدة مزايا:

  • العزل — كل خدمة في عملية منفصلة، الأعطال لا تؤثر على التطبيق الرئيسي
  • الأمان — الخدمات معزولة ومصادق عليها، صلاحيات محدودة
  • القابلية للتوسيع — إمكانيات جديدة تُضاف كخدمات جديدة بدون تعديل النواة
  • إدارة الموارد — كل خدمة يمكن تشغيلها وإيقافها بشكل مستقل
  • مرونة اللغة — الخدمات يمكن كتابتها بأي لغة (حالياً جميعها TypeScript)

21 المحرك الأساسي

المحرك الرئيسي للوكيل — يستقبل المهام من المستخدم، يحللها، يخطط للخطوات، وينفذها. يتواصل مع جميع المزوّدين (OpenAI, Anthropic, Ollama, Gemini وغيرها) عبر محرك التوجيه. يدير دورة حياة المهمة كاملة من التخطيط إلى المراجعة. يدعم أكثر من 50 مهارة جاهزة ويمكن توسيعه بمهارات مخصصة.

المنفذ: 47821◎ TypeScript

26 جسر التواصل

خادم HTTP يعمل كجسر بين تطبيق Aura المكتبي والعملاء الخارجيين. يُمكّن CLI من إنشاء المهام ومتابعتها من الطرفية، ويمكن إضافة Chrome extension للتحكم من المتصفح. يستمع على المنفذ 47826 ويتطلب مصادقة بالجلسة. لا يقبل الاتصالات إلا من localhost للأمان.

المنفذ: 47826⇄ TypeScript

23 مساعد المتصفح

محرك أتمتة متصفح كامل باستخدام Playwright. يمكنه فتح المواقع، ملء النماذج، التقاط لقطات الشاشة، استخراج البيانات، والتفاعل مع عناصر الصفحة. يدعم متصفحات Chromium و Firefox و WebKit. مثالي لمهام البحث والأتمتة على الويب.

المنفذ: 47823◉ TypeScript

25 مزامنة سحابية

خدمة مزامنة مشفرة بالكامل (E2EE) بين الأجهزة. تستخدم WebSocket للاتصال الفوري وتشفير ChaCha20-Poly1305 لكل جهاز. تخزّن المفاتيح محلياً فقط — حتى خوادم Aura لا تستطيع قراءة بياناتك.

المنفذ: 47825☁ TypeScript

28 التحكم بالحاسوب

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

المنفذ: 47828🖥 TypeScript

22 مساعد الآلة الافتراضية

بيئة تنفيذ معزولة وآمنة للأكواد. تدير حاويات Docker و WSL2 لتشغيل الأكواد في بيئة منفصلة تماماً عن النظام. تمنع الوصول غير المصرح للملفات والشبكة. مثالية لاختبار الأكواد وتجربة المكتبات الجديدة بأمان.

المنفذ: 47822▣ TypeScript

24 مساعد الإضافات

مدير الإضافات الديناميكي — يحمّل ويدير خوادم MCP والمهارات والمكونات الإضافية. يستمع على المنفذ 47824. يكتشف الإضافات تلقائياً من marketplace ويدير دورة حياتها (تثبيت، تشغيل، إيقاف، تحديث).

المنفذ: 47824◆ TypeScript

29 نظام الأوامر

نظام إدارة الأوامر النصية — يتحكم في كيفية تواصل الوكيل مع المستخدم والنظام. يدعم قوالب ديناميكية، تخصيص حسب المزوّد، وإدارة السياق. يضمن تجربة متسقة عبر جميع المزوّدين والنماذج.

المنفذ: 47829☆ TypeScript

كيف تتواصل Sidecars

🔌 طرق التواصل

تتواصل الخدمات المساعدة مع التطبيق الرئيسي عبر:

الطريقةالمنفذالاستخدام
HTTP API47821-47830نقاط REST لإدارة المهام والفحص الصحي
IPCتواصل مباشر بين العمليات للعمليات السريعة
WebSocket47826بث مباشر للسجلات والأحداث

جميع الخدمات تعرض نقطة GET /health تعيد الحالة والإصدار ومعلومات المرحلة.

📊 المنافذ والفحص الصحي

الخدمةالمنفذنقطة الفحص
المحرك الأساسي47821GET /health
جسر التواصل47826GET /health
مساعد المتصفح47823GET /health
مزامنة سحابية47825GET /health
التحكم بالحاسوب47828GET /health
مساعد الآلة الافتراضية47822GET /health
مساعد الإضافات47824GET /health
نظام الأوامر47829GET /health

مراقبة حالة الخدمات

كل خدمة تعرض نقطة فحص صحي. يمكنك فحص جميع الخدمات دفعة واحدة:

# فحص صحة خدمة Agent
curl http://localhost:47821/health

# الاستجابة:
{
  "phase": 7,
  "version": "0.1.0-alpha",
  "status": "ready",
  "uptime": 3600
}

تطبيق سطح المكتب يراقب صحة الخدمات تلقائياً ويعيد تشغيل الخدمات المتعطلة. يمكنك أيضاً التحقق من الحالة في الإعدادات → التشخيص.

مصادقة Sidecars

جميع الخدمات تستخدم نظام مصادقة موحد مع رموز (tokens):

  • مصادقة بالرمز — كل طلب بين العمليات يجب أن يتضمن رمز sidecar صالح
  • تحميل وقت التشغيل — الرموز تُنشأ عند بدء التطبيق وتُحمّل في كل خدمة
  • التحقق من الطلبات — كل طلب يُفحص مقابل الرمز
  • رفض 401 — الطلبات غير المصرحة تُرفض بـ 401 Unauthorized

🛡️ العزل

كل خدمة تعمل في مساحة عملية منفصلة مع:

  • عملية Node.js منفصلة — لا ذاكرة أو حالة مشتركة
  • وصول محدود لنظام الملفات — فقط المجلدات التي تحتاجها
  • لا وصول للشبكة افتراضياً — يجب منحه صراحة
  • حدود الموارد — استخدام CPU والذاكرة مراقب

بناء Sidecars

الخدمات المساعدة تُبنى بـ TypeScript وتُجمع بـ esbuild:

# بناء جميع الخدمات
npm run build:sidecars

# بناء خدمة محددة
npm run build:sidecar -w sidecar/aura-agent

# تشغيل خدمة في وضع التطوير
npm run sidecar          # Agent
npm run vm-helper        # VM Helper
npm run browser-helper   # Browser Helper

📝 إنشاء Sidecar جديدة

  1. 1. أنشئ مجلد جديد في sidecar/
  2. 2. أضف package.json مع التبعيات
  3. 3. نفّذ نقطة الفحص الصحي: GET /health
  4. 4. نفّذ نقاط منطق العمل الخاص بك
  5. 5. أضف المصادقة باستخدام sidecar-auth.ts
  6. 6. سجّل الخدمة في مدير العمليات للتطبيق الرئيسي
  7. 7. أضف سكريبت البناء إلى package.json الرئيسي