Liri
Linglong Bird · مساعد ذكاء اصطناعي شخصي · محلي أولاً · أمان مدمج
$ git clone https://github.com/cocosoft/Liri.git طريق لم يكتمل بعد
في 25 مايو 2026 كان مجرد v0.1 بـ100 التزام. وبعد خمسة أشهر صار أكثر من 4,000 ملف و27 قناة — ومعه الفاتورة: ملف واحد بـ7,000 سطر، و105 ملفات متجاوزة الحد لم يسجّلها أحد، و«تنظيف كود ميت» واحد حذف نظام البيئة المعزولة بالكامل.
أعدنا ما حُذف، ثم حوّلنا الحذف والحدود ومفردات الحالة إلى بوابات CI واحدة بعد أخرى. الطريق لم يكتمل.
ما هو Liri
Liri هو مساعد ذكاء اصطناعي شخصي مبني على بنية TypeScript + Rust.
إنه أكثر بكثير من روبوت محادثة — يستطيع فهم النية وتنفيذ الأوامر وإدارة المهام واستدعاء الأدوات، بل والتعاون مع وكلاء ذكاء اصطناعي آخرين. محرك واحد يشغّل كل نقاط الدخول: الطرفية، وسطح المكتب، والمراسلة، وMCP.
71 نظاماً فرعياً معيارياً، و4,109 ملف TypeScript، و429 مكوّن سطح مكتب — كلها قابلة للتقليم حسب نسخة البناء.
الإمكانات
ثماني إمكانات مميزة، كل واحدة قابلة للتحقق في مصدر GitHub
محرك وكيل عميق
حلقة TAOR مطوَّرة داخلياً: لها استراتيجية وذاكرة ونقاط تفتيش
- حلقة قرار TAOR (Think-Act-Observe-Reason)
- 4 استراتيجيات وكيل: عام / برمجة / استكشاف / تخطيط
- الاستئناف من نقاط التفتيش يُبقي المهام الطويلة قابلة للاستعادة بعد الانقطاع
- نوافذ سياق متعددة الطبقات مع ضغط تلقائي بثلاث درجات
- 8 أسباب إنهاء مع قطع الدائرة لكل جولة لمنع الدوران الفارغ
خمس طبقات دفاع متعمق
تحليل Rust AST وقت الترجمة → خمسة خطوط دفاع → عزل متعدد الواجهات الخلفية
- تحليل Bash وقت الترجمة عبر Rust FFI AST
- 37 قاعدة أوامر خطرة + 14 قاعدة حقن
- محرك قواعد سياسة Guardrail
- مصنّف مخاطر AutoMode
- تغطية العزل عبر Landlock / macOS / Windows / Docker / SSH / PTY
69 أداة مدمجة
23 فئات تغطي الملفات والأوامر والشبكة والوسائط والكود والتعاون
- تنفيذ Bash على مستوى Rust AST
- ذكاء برمجي مدعوم بـ LSP
- جلب صفحات الويب والبحث
- معالجة Notebook والصور والصوت والفيديو
- دعم كامل لعميل وخادم MCP
27 قناة مراسلة
27 محوّل قناة، مع دعم WeChat / WeCom / DingTalk / Feishu / QQ
- Telegram / Discord / Slack / WhatsApp
- WeChat / WeCom / DingTalk / Feishu / QQ / Yuanbao
- Email / SMS / Webhook / IRC / Matrix
- كتالوج قنوات موحّد مع توجيه عبر بوابة
- تقليم القنوات وقت البناء لبناءات أصغر
قابلية مراقبة بمستوى المؤسسات
تكامل OpenTelemetry مع التنبيهات وفحوص الصحة
- تتبع + مقاييس متوافقة مع اصطلاحات OTel GenAI الدلالية
- تسجيل منظّم متعدد المستويات
- قواعد تنبيه وإدارة حوادث
- فحوص صحة ونسخ احتياطي وأرشفة بيانات
- أحداث جلسة قابلة للإعادة والتدقيق
بنية قابلة للتوصيل
SDK للإضافات ونظام مهارات وأربعة بروتوكولات — قابلة للتقليم حسب نسخة البناء
- 5 نسخ بناء: core / personal / coding / enterprise / headless
- سوق إضافات مع تحميل فوري وتحقق من التوقيع
- عزل مصادر المهارات الثلاثة (مدمجة / مستخدم / طرف ثالث)
- بروتوكولات MCP / ACP / A2A / LSP
- إقلاع بأربع مراحل (T0–T3) مع تحميل عند الطلب
محلي أولاً
نماذج محلية عبر Ollama / llama.cpp، والبيانات على جهازك افتراضياً
- استدلال محلي يعمل دون اتصال بالكامل
- ملف بيانات SQLite واحد لا يغادر الجهاز
- تُخزَّن الجلسات في events.jsonl للإضافة فقط
- مزودو السحابة كتحسين اختياري
- مجلدات بيئة معزولة لكل مساحة عمل
توجيه ذكي
19 فئة مهام × 4 مستويات × 5 مراحل قرار، مع سلاسل تبديل المزودين
- اكتشاف 19 نوع مهمة تلقائياً
- 4 مستويات: simple / medium / complex / reasoning
- 5 مراحل: مفتاح → مسار سريع → التصاق الجلسة → حكم LLM → المستوى
- FallbackChain بين المزودين مع سياسات إعادة المحاولة
- الأسعار ونوافذ السياق مقروءة من قاعدة البيانات
طبقات كأنها نظام تشغيل
نواة رقيقة وحدود بين الأنظمة الفرعية وبوابات اعتماد؛ محلي أولاً هو الافتراضي، لا مفتاحاً.
النواة
حزمة @openliri/kernel مستقلة تعرض واجهة رقيقة فقط، تحرسها البوابات K01–K08
الأنظمة الفرعية
الأدوات والقنوات والذاكرة والتوجيه والبيئة المعزولة والمهام — لكل منها نقاط دخول وحدود
البوابات
اتجاه اعتماد من ست طبقات + أكثر من 20 فحص بنية؛ المخالفة توقف CI
محلي أولاً
تبقى البيانات على جهازك افتراضياً؛ ويمكن تشغيل النماذج محلياً بالكامل
خمس طبقات دفاع متعمق
من تحليل AST وقت الترجمة إلى العزل وقت التشغيل: كل عدد قواعد وعتبة وسياسة تراجع مكتوبة في المصدر
🦀 تحليل Rust AST وقت الترجمة
وقت الترجمة ينفّذ Rust FFI تحليلاً أمنياً على مستوى AST قبل تنفيذ الكود، ويقارنه بـ37 قاعدة أوامر خطرة
تحليل Rust AST وقت الترجمة
وقت الترجمةينفّذ Rust FFI تحليلاً أمنياً على مستوى AST قبل تنفيذ الكود، ويقارنه بـ37 قاعدة أوامر خطرة
- تحلّل طبقة Rust FFI شجرة Bash AST
- تحليل Bash AST مع 37 قاعدة أوامر خطرة
- كشف حقن المتغيرات ومنع تجاوز المسارات
- كشف التلاعب بالمعاملات مع التحقق من الأوامر المدرجة في القائمة المسموحة
🔍 تحليل TypeScript الدلالي
وقت التشغيل تُحكم الأوامر المركبة مقطعاً بمقطع وقت التشغيل، مع ربط أسباب الرفض بالعبارة المحددة
تحليل TypeScript الدلالي
وقت التشغيلتُحكم الأوامر المركبة مقطعاً بمقطع وقت التشغيل، مع ربط أسباب الرفض بالعبارة المحددة
- تمر الأوامر المركبة للقراءة فقط مقطعاً بمقطع بدلاً من رفضها كاملة
- كشف 14 نمط حقن، بما فيها المحارف صفرية العرض وتلويث متغيرات البيئة
- 10 قاعدة خاصة بـ Shell (bash / PowerShell / cmd)
- رسائل الرفض تشير إلى السبب الحقيقي والعبارة المخالفة
⚙️ محرك قواعد Guardrail
السياسة نظام قواعد سياسة قابل للإعداد بترخيص دقيق حسب الأداة والقناة ومجموعة المستخدمين
محرك قواعد Guardrail
السياسةنظام قواعد سياسة قابل للإعداد بترخيص دقيق حسب الأداة والقناة ومجموعة المستخدمين
- deny-by-default مع قوائم السماح
- دقة الأذونات: أداة → قاعدة → بصمة
- تغييرات القواعد تسري فوراً دون إعادة تشغيل
- الرفض يبلّغ عن مصدر القاعدة والعبارة المطابقة
🤖 مصنّف AutoMode
تكيّفي يقيّم المخاطر من سياق المهمة والأداة، ثم يقرر تلقائياً السماح أو السؤال أو الرفض
مصنّف AutoMode
تكيّفييقيّم المخاطر من سياق المهمة والأداة، ثم يقرر تلقائياً السماح أو السؤال أو الرفض
- تصنيف المخاطر بناءً على دلالة الأمر وسياق الأداة
- الأوامر منخفضة المخاطر تُسمح تلقائياً وفق السياسة
- الأوامر عالية المخاطر تنتقل إلى الموافقة وتظهر في Inbox
- الأوامر غير الموثوقة تُسأل افتراضياً بدلاً من رفضها
🔒 تنفيذ في بيئة معزولة
العزل 6 واجهات خلفية للعزل — Landlock / macOS / Windows / Docker / SSH / PTY — فلا تلمس الأوامر المتجاوزة جهازك
تنفيذ في بيئة معزولة
العزل6 واجهات خلفية للعزل — Landlock / macOS / Windows / Docker / SSH / PTY — فلا تلمس الأوامر المتجاوزة جهازك
- Linux Landlock: قيود على نظام الملفات على مستوى النواة
- بيئة macOS المعزولة / Windows Low IL + كائن Job كخط احتياطي
- Docker: عزل كامل مع سياسات الموارد والشبكة
- تنفيذ SSH بعيد ومسارات PTY مُتحكَّم بها
- تراجع صريح مع إشعار واضح عند عدم توفر أي واجهة خلفية
الأمان بالأرقام
تحليل Rust AST وقت الترجمة · تحليل TypeScript الدلالي · محرك قواعد Guardrail · مصنّف AutoMode · تنفيذ في بيئة معزولة
التوجيه الذكي
يختار مستوى النموذج من نوع المهمة وصعوبتها، ثم يتراجع وفق ترتيب الإعداد عند تعذر المزود الأساسي
اكتشاف تلقائي لـ 19 نوع مهمة (8 شائعة أدناه)
خط قرار من 5 طبقات
سلسلة تبديل المزودين
تعذر النموذج الأساسي → تبديل تلقائي → تراجع دون انقطاع
التفاعل الصوتي
أكثر من الكتابة — قل ما تحتاجه، فيفهم Liri وينفّذ ويجيب
إدخال صوتي
faster-whisper وSenseVoice محلياً، أو OpenAI Whisper في السحابة
إخراج صوتي
Piper محلياً أو Edge / OpenAI في السحابة، أو أمر مخصص
استدعاء كأداة
الصوت نفسه أداة يمكن للنموذج استدعاؤها عند الحاجة
كل الواجهات
سطح المكتب والطرفية يتشاركان خدمة الصوت نفسها
تشغيل دون استخدام اليدين · مهام متعددة · إتاحة للجميع · أوامر صوتية سريعة · قله في أي مكان، فيُنفَّذ
الدماغ الثاني
قاعدة المعرفة → الذاكرة → أحداث الجلسة: ثلاث طبقات سياق قابلة للاسترجاع، كلها محفوظة على جهازك
قاعدة المعرفة
Markdown على القرص مع فهرسة دلالية، وكل نتيجة تحمل ذكر مصدرها
نظام الذاكرة
ذاكرة متعددة الطبقات مع جداول متجهات SQLite، تُستدعى بترجيح الصلة
سجل أحداث الجلسة
كل ما يدخل طلب النموذج يصبح حدث جلسة يمكن إعادته
تنظيم وإدارة
نظّم المعرفة في وقت الخمول، واضغط السياق عند التجاوز — خطان حقيقيان في الخلفية
خط DreamEngine الخماسي
حوكمة السياق متعدد الطبقات
عندما تتجاوز محادثة طويلة النافذة، تُسقط أقدم الجولات أولاً، فينخفض استهلاك الذاكرة وقت البناء من O(الكل) إلى O(النافذة). تبقى إشارة «النص الأصلي قابل للاسترجاع» بعد القطع، ويمكن قراءة التفاصيل صفحةً بصفحة، ثم يُشغَّل الضغط التلقائي عند تجاوز حد الرموز.
حلقة PDCA للتحسين الذاتي
في المهام الطويلة يشغّل Liri حلقة Plan-Do-Check-Act بنفسه: تفكيك المهمة → تنفيذ الخطوات → مراجعة النتائج → تعديل الخطة، حتى الإنجاز أو بلوغ شرط توقف.
عميل سطح المكتب
مبني بـ Tauri 2.11 + React 19 · 429 مكوّن TSX · 32 صفحة وظيفية · تجربة سطح مكتب كاملة
رسم توضيحي لبنية الواجهة، لا لقطة شاشة فعلية
27 قناة مراسلة
لكل قناة من قنوات 27 محوّل مطابق. عيّن متغيرات بيئتها لتشغيلها، أو استبعدها وقت البناء.
27 قناة إجمالاً · كتالوج موحّد · تشغيل لكل قناة · تقليم وقت البناء
المنظومة
سوق الإضافات + سوق MCP + ثلاثة مصادر للمهارات + سوق القوالب = منظومة Liri قابلة للتركيب
سوق MCP
5 محوّلات مصادر في بحث واحد
سوق الإضافات
مصادر محلية وnpm وسجلات بعيدة
ثلاثة مصادر للمهارات
مدمجة ومستخدم وطرف ثالث — معزولة فعلياً
القوالب والبروتوكولات
قوالب وكلاء ووثائق جاهزة للتوصيل
أكثر من قائمة ميزات
ثلاثة أشياء يسهل تفويتها، لكنها تُستخدم كل يوم.
نظام شخصية Buddy
ليس أداة، بل رفيق: المظهر يُولَّد حتمياً من بذرة، فتبقى الشخصية نفسها بالشكل نفسه دائماً؛ وحالة النمو محفوظة وتتراكم عبر الجلسات.
تكلفة شفافة
الأسعار تُقرأ من قاعدة البيانات، والإسناد إلى اسم النموذج الحقيقي الذي يعيده المزود، وكل استدعاء يُكتب في cost_records؛ والميزانية تنبّه عند تجاوز الحد، ثم تضغط، ثم تمنع.
أربعة أنواع من المستخدمين
المطورون يشغّلون الأوامر ويعدّلون الكود؛ ومسؤولو الأمن يحصلون على اعتراض وتدقيق على مستوى AST؛ وفرق التشغيل تشغّله كخدمة دائمة؛ وغيرهم يصل إليه من تطبيق محادثة.
القيود الحالية
ما لم يكتمل بعد في مرحلة التكرار السريع — نكتبه هنا حتى لا تكتشفه بنفسك.
الأمان بانتظار تدقيق خارجي
بانتظار تدقيق خارجيطُبِّقت 5 طبقات دفاع و6 واجهات خلفية للعزل، وهناك 51 ملفاً متعلقاً بالعزل يمكنك مراجعته واحداً واحداً — لكن لم يكتمل أي تدقيق أمني من طرف ثالث.
تفاعلات سطح المكتب قيد الصقل
قيد الصقل429 مكوّن TSX و32 صفحة جاهزة؛ ولا تزال الاختصارات والحركات والحالات الحدّية قيد الضبط.
كتالوج السوق لا يزال صغيراً
قيد البناءسوق الإضافات وسوق MCP ومصادر المهارات تعمل من الطرف إلى الطرف، لكن الكتالوج القابل للتثبيت ما زال ينمو.
ابدأ الآن
ثلاث خطوات: تثبيت الاعتماديات → إعداد مفتاح API → تشغيل dev
تثبيت الاعتماديات
$ git clone https://github.com/cocosoft/Liri.git
$ cd Liri/app && bun install
إعداد مفتاح API
$ cp .env.example .env
$ # حرّر .env وأضف مفتاح API تشغيل Liri
$
bun run dev
مفتوح المصدر · المجتمع
Liri مشروع مفتوح المصدر، ونرحّب بكل مساهم