Skip to content

نظرة عامة على البنية

Triggerfish هو منصة وكلاء ذكاء اصطناعي آمنة ومتعددة القنوات مع ثابت جوهري واحد:

SECURITY الأمان حتمي ودون مستوى LLM. كل قرار أمني يُتخذ بواسطة

كود برمجي صرف لا يستطيع LLM تجاوزه أو تعديله أو التأثير عليه. ليس لدى LLM أي صلاحية -- إنه يطلب إجراءات؛ وطبقة السياسات تقرر. :::

توفر هذه الصفحة الصورة الكبيرة لكيفية عمل Triggerfish. كل مكون رئيسي يحتوي على رابط لصفحة تفصيلية مخصصة.

بنية النظام

بنية النظام: تتدفق القنوات عبر موجه القنوات إلى Gateway، الذي ينسق مدير الجلسات ومحرك السياسات وحلقة الوكيل

تدفق البيانات

كل رسالة تتبع هذا المسار عبر النظام:

تدفق البيانات: خط أنابيب من 9 خطوات من الرسالة الواردة عبر hooks السياسات إلى التسليم الصادر

في كل نقطة تنفيذ، يكون القرار حتمياً -- نفس المدخلات تنتج دائماً نفس النتيجة. لا توجد استدعاءات LLM داخل hooks، ولا عشوائية، ولا طريقة لـ LLM للتأثير على النتيجة.

المكونات الرئيسية

نظام التصنيف

تتدفق البيانات عبر أربعة مستويات مرتبة: RESTRICTED > CONFIDENTIAL > INTERNAL > PUBLIC. القاعدة الأساسية هي منع الكتابة للأسفل: يمكن للبيانات أن تتدفق فقط إلى تصنيف مساوٍ أو أعلى. لا يستطيع جلسة CONFIDENTIAL إرسال بيانات إلى قناة PUBLIC. بدون استثناءات. بدون تجاوز من LLM.

اقرأ المزيد عن نظام التصنيف.

محرك السياسات و Hooks

ثمانية hooks تنفيذية حتمية تعترض كل إجراء في نقاط حرجة في تدفق البيانات. إن hooks هي دوال صرفة: متزامنة، مسجلة، وغير قابلة للتزوير. يدعم محرك السياسات قواعد ثابتة (غير قابلة للتكوين)، وقواعد قابلة للضبط من المسؤول، ومخارج طوارئ تصريحية بـ YAML للمؤسسات.

اقرأ المزيد عن محرك السياسات.

الجلسات و Taint

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

اقرأ المزيد عن الجلسات و Taint.

Gateway

Gateway هو مستوى التحكم المركزي -- خدمة محلية طويلة التشغيل تدير الجلسات والقنوات والأدوات والأحداث وعمليات الوكيل من خلال نقطة نهاية WebSocket JSON-RPC. ينسق خدمة الإشعارات، ومجدول cron، واستيعاب webhook، وتوجيه القنوات.

اقرأ المزيد عن Gateway.

التخزين

جميع البيانات ذات الحالة تتدفق عبر تجريد StorageProvider موحد. المفاتيح المنظمة بمساحات أسماء (sessions:, taint:, lineage:, audit:) تفصل الاهتمامات مع السماح بتبديل الواجهات الخلفية دون لمس منطق الأعمال. الافتراضي هو SQLite WAL في ~/.triggerfish/data/triggerfish.db.

اقرأ المزيد عن التخزين.

الدفاع في العمق

الأمان مطبق عبر 13 آلية مستقلة، من مصادقة القنوات والوصول للبيانات المدرك للصلاحيات عبر taint الجلسة، hooks السياسات، عزل plugin، عزل أدوات نظام الملفات، وتسجيل التدقيق. لا توجد طبقة واحدة كافية بمفردها؛ معاً تشكل دفاعاً يتدهور بشكل رشيق حتى لو تم اختراق طبقة واحدة.

اقرأ المزيد عن الدفاع في العمق.

مبادئ التصميم

المبدأما يعنيه
التنفيذ الحتميتستخدم hooks السياسات دوال صرفة. بدون استدعاءات LLM، بدون عشوائية. نفس المدخلات تنتج دائماً نفس القرار.
انتشار Taintجميع البيانات تحمل بيانات وصفية للتصنيف. يمكن لـ taint الجلسة أن يتصاعد فقط، ولا ينخفض أبداً.
منع الكتابة للأسفللا يمكن للبيانات أن تتدفق إلى مستوى تصنيف أقل. أبداً.
تدقيق كل شيءجميع قرارات السياسات تُسجل مع سياق كامل: الطابع الزمني، نوع hook، معرف الجلسة، المدخلات، النتيجة، القواعد المُقيّمة.
Hooks غير قابلة للتزويرلا يستطيع LLM تجاوز أو تعديل أو التأثير على قرارات hook السياسات. تعمل Hooks في كود أسفل طبقة LLM.
عزل الجلساتكل جلسة تتبع taint بشكل مستقل. جلسات الخلفية تبدأ بـ taint PUBLIC جديد. مساحات عمل الوكيل معزولة بالكامل.
تجريد التخزينلا يوجد وحدة تنشئ تخزينها الخاص. كل الاستمرارية تتدفق عبر StorageProvider.

مكدس التقنيات

المكونالتقنية
بيئة التشغيلDeno 2.x (TypeScript strict mode)
إضافات PythonPyodide (WASM)
الاختبارأداة اختبار Deno المدمجة
القنواتBaileys (WhatsApp), grammY (Telegram), Bolt (Slack), discord.js (Discord)
أتمتة المتصفحpuppeteer-core (CDP)
الصوتWhisper (STT محلي), ElevenLabs/OpenAI (TTS)
التخزينSQLite WAL (افتراضي), واجهات خلفية مؤسسية (Postgres, S3)
الأسرارسلسلة مفاتيح نظام التشغيل (شخصي), تكامل خزنة (مؤسسي)

لا يتطلب Triggerfish أي أدوات بناء خارجية، ولا Docker، ولا اعتماد على

السحابة. يعمل محلياً، يعالج البيانات محلياً، ويمنح المستخدم سيادة كاملة على بياناته. :::