مرحلة التكرار السريع · قد تتغير الواجهات والوثائق
Liri Logo

Liri

Linglong Bird · مساعد ذكاء اصطناعي شخصي · محلي أولاً · أمان مدمج

4,109 ملف TS 69 أداة مدمجة 5 طبقة أمان 27 قناة مراسلة 18 نوع Buddy
$ git clone https://github.com/cocosoft/Liri.git
BUILD LOG

طريق لم يكتمل بعد

في 25 مايو 2026 كان مجرد v0.1 بـ100 التزام. وبعد خمسة أشهر صار أكثر من 4,000 ملف و27 قناة — ومعه الفاتورة: ملف واحد بـ7,000 سطر، و105 ملفات متجاوزة الحد لم يسجّلها أحد، و«تنظيف كود ميت» واحد حذف نظام البيئة المعزولة بالكامل.

أعدنا ما حُذف، ثم حوّلنا الحذف والحدود ومفردات الحالة إلى بوابات CI واحدة بعد أخرى. الطريق لم يكتمل.

156 يوماً 116 إصداراً 20+ فحص بنية
اقرأ القصة كاملة

ما هو 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 FFI شجرة Bash AST
  • تحليل Bash AST مع 37 قاعدة أوامر خطرة
  • كشف حقن المتغيرات ومنع تجاوز المسارات
  • كشف التلاعب بالمعاملات مع التحقق من الأوامر المدرجة في القائمة المسموحة
🔍

تحليل TypeScript الدلالي

وقت التشغيل

تُحكم الأوامر المركبة مقطعاً بمقطع وقت التشغيل، مع ربط أسباب الرفض بالعبارة المحددة

  • تمر الأوامر المركبة للقراءة فقط مقطعاً بمقطع بدلاً من رفضها كاملة
  • كشف 14 نمط حقن، بما فيها المحارف صفرية العرض وتلويث متغيرات البيئة
  • 10 قاعدة خاصة بـ Shell (bash / PowerShell / cmd)
  • رسائل الرفض تشير إلى السبب الحقيقي والعبارة المخالفة
⚙️

محرك قواعد Guardrail

السياسة

نظام قواعد سياسة قابل للإعداد بترخيص دقيق حسب الأداة والقناة ومجموعة المستخدمين

  • deny-by-default مع قوائم السماح
  • دقة الأذونات: أداة → قاعدة → بصمة
  • تغييرات القواعد تسري فوراً دون إعادة تشغيل
  • الرفض يبلّغ عن مصدر القاعدة والعبارة المطابقة
🤖

مصنّف AutoMode

تكيّفي

يقيّم المخاطر من سياق المهمة والأداة، ثم يقرر تلقائياً السماح أو السؤال أو الرفض

  • تصنيف المخاطر بناءً على دلالة الأمر وسياق الأداة
  • الأوامر منخفضة المخاطر تُسمح تلقائياً وفق السياسة
  • الأوامر عالية المخاطر تنتقل إلى الموافقة وتظهر في Inbox
  • الأوامر غير الموثوقة تُسأل افتراضياً بدلاً من رفضها
🔒

تنفيذ في بيئة معزولة

العزل

6 واجهات خلفية للعزل — Landlock / macOS / Windows / Docker / SSH / PTY — فلا تلمس الأوامر المتجاوزة جهازك

  • Linux Landlock: قيود على نظام الملفات على مستوى النواة
  • بيئة macOS المعزولة / Windows Low IL + كائن Job كخط احتياطي
  • Docker: عزل كامل مع سياسات الموارد والشبكة
  • تنفيذ SSH بعيد ومسارات PTY مُتحكَّم بها
  • تراجع صريح مع إشعار واضح عند عدم توفر أي واجهة خلفية

الأمان بالأرقام

37
قواعد الأوامر الخطرة
مطابقة على مستوى AST عبر bash / PowerShell / cmd
14
قواعد كشف الحقن
تغطي المحارف صفرية العرض وتلويث متغيرات البيئة وغيرها
6
واجهات العزل الخلفية
Landlock / macOS / Windows / Docker / SSH / PTY
51
ملفات تنفيذ العزل
تطبيقات TypeScript تحت app/src/sandbox

تحليل Rust AST وقت الترجمة · تحليل TypeScript الدلالي · محرك قواعد Guardrail · مصنّف AutoMode · تنفيذ في بيئة معزولة

التوجيه الذكي

يختار مستوى النموذج من نوع المهمة وصعوبتها، ثم يتراجع وفق ترتيب الإعداد عند تعذر المزود الأساسي

اكتشاف تلقائي لـ 19 نوع مهمة (8 شائعة أدناه)

💻
البرمجة
توليد الكود وتصحيحه ومراجعته
✍️
الكتابة
الوثائق والنصوص والترجمة
📊
التحليل
تحليل البيانات والاستدلال والتخطيط
🔧
الأدوات
الملفات والبحث وعمليات النظام
🌐
الترجمة
الترجمة متعددة اللغات والتوطين
🔍
البحث
البحث في الويب واسترجاع المعلومات
🎨
الإبداع
العصف الذهني والتصميم وتوليد الأفكار
💬
الدردشة
المحادثة اليومية

خط قرار من 5 طبقات

1 L1: مفتاح التوجيه عند الإيقاف تذهب الطلبات مباشرة إلى النموذج الافتراضي دون فحوص إضافية
2 L2: المسار السريع المهام البسيطة أو قواعد البادئة تذهب مباشرة إلى النموذج منخفض المستوى
3 L3: التصاق الجلسة يُبقي نموذجاً واحداً لكل محادثة حتى لا يتبدل باستمرار
4 L4: مصنّف LLM نموذج صغير يحكم على نوع المهمة وصعوبتها ثم يحدد المستوى
5 L5: تحديد المستوى يربط مستويات simple/medium/complex/reasoning بنماذج محددة

سلسلة تبديل المزودين

تعذر النموذج الأساسي → تبديل تلقائي → تراجع دون انقطاع

الأساسي المزود الأساسي · نموذج المستوى الحالي
البديل 1 مزود احتياطي من المستوى نفسه
البديل 2 مزود احتياطي من مستوى آخر
البديل 3 أي مزود آخر مُعدّ
الملاذ الأخير Ollama / llama.cpp محلي

التفاعل الصوتي

أكثر من الكتابة — قل ما تحتاجه، فيفهم Liri وينفّذ ويجيب

🎤

إدخال صوتي

faster-whisper وSenseVoice محلياً، أو OpenAI Whisper في السحابة

faster-whisper محلي
SenseVoice
OpenAI Whisper
تعرف متدفق
🔊

إخراج صوتي

Piper محلياً أو Edge / OpenAI في السحابة، أو أمر مخصص

Piper محلي
Edge TTS
OpenAI TTS
أمر مخصص
⚡

استدعاء كأداة

الصوت نفسه أداة يمكن للنموذج استدعاؤها عند الحاجة

أداة tts
أداة audio_play
إدخال صوتي
تشغيل الردود
📱

كل الواجهات

سطح المكتب والطرفية يتشاركان خدمة الصوت نفسها

سطح مكتب Tauri
طرفية CLI
HTTP API

تشغيل دون استخدام اليدين · مهام متعددة · إتاحة للجميع · أوامر صوتية سريعة · قله في أي مكان، فيُنفَّذ

الدماغ الثاني

قاعدة المعرفة → الذاكرة → أحداث الجلسة: ثلاث طبقات سياق قابلة للاسترجاع، كلها محفوظة على جهازك

الطبقة 1: قاعدة المعرفة

قاعدة المعرفة

Markdown على القرص مع فهرسة دلالية، وكل نتيجة تحمل ذكر مصدرها

Markdown على القرص فهرس دلالي JSONL بحث بالكلمات المفتاحية بحث بالمتجهات دمج RRF
الطبقة 2: الذاكرة

نظام الذاكرة

ذاكرة متعددة الطبقات مع جداول متجهات SQLite، تُستدعى بترجيح الصلة

ذاكرة متعددة الطبقات memory_vectors ترجيح بالصلة تنظيف الذاكرة حقن السياق
الطبقة 3: مصدر الحقيقة

سجل أحداث الجلسة

كل ما يدخل طلب النموذج يصبح حدث جلسة يمكن إعادته

إضافة إلى events.jsonl حفظ قبل الكتابة إعادة الجلسة مسار قابل للتدقيق تسجيل إلزامي وقت الترجمة

تنظيم وإدارة

نظّم المعرفة في وقت الخمول، واضغط السياق عند التجاوز — خطان حقيقيان في الخلفية

خط DreamEngine الخماسي

01 Gather
جمع
تجميع الجلسات والوثائق المنتظرة للتنظيم
02 Analyze
تحليل
استخلاص الموضوعات والنتائج القابلة لإعادة الاستخدام
03 Generate
توليد
إنتاج ملاحظات موجهة إلى الطبقات الأعلى
04 Write
كتابة
الكتابة إلى قاعدة المعرفة والذاكرة
05 Index
فهرسة
إعادة بناء فهارس المتجهات والكلمات المفتاحية
🧠

حوكمة السياق متعدد الطبقات

عندما تتجاوز محادثة طويلة النافذة، تُسقط أقدم الجولات أولاً، فينخفض استهلاك الذاكرة وقت البناء من O(الكل) إلى O(النافذة). تبقى إشارة «النص الأصلي قابل للاسترجاع» بعد القطع، ويمكن قراءة التفاصيل صفحةً بصفحة، ثم يُشغَّل الضغط التلقائي عند تجاوز حد الرموز.

نوافذ متعددة الطبقات
اقتطع الجولات القديمة أولاً عند تجاوز السياق
استرجاع عند الطلب
أعد قراءة النص الأصلي على صفحات
ضغط بثلاث درجات
Tier 1/2 متزامن + Tier 3 في الخلفية
🔄

حلقة PDCA للتحسين الذاتي

في المهام الطويلة يشغّل Liri حلقة Plan-Do-Check-Act بنفسه: تفكيك المهمة → تنفيذ الخطوات → مراجعة النتائج → تعديل الخطة، حتى الإنجاز أو بلوغ شرط توقف.

Plan
تفكيك تلقائي
Do
تنفيذ خطوة بخطوة
Check
مراجعة تلقائية
Act
تصحيح تلقائي

عميل سطح المكتب

مبني بـ Tauri 2.11 + React 19 · 429 مكوّن TSX · 32 صفحة وظيفية · تجربة سطح مكتب كاملة

Liri Desktop · Tauri 2.11
💬
لوحة المحادثة
Liri · Linglong Bird
مرحباً! أنا Liri — كيف يمكنني مساعدتك؟
ساعدني في تحليل بيانات هذا المشروع
حسناً، يجري التحليل...
اكتب رسالة واضغط Enter للإرسال...

رسم توضيحي لبنية الواجهة، لا لقطة شاشة فعلية

💬
لوحة المحادثة
محادثات متعددة الأدوار
🤖
إدارة النماذج
التبديل بين النماذج
📚
قاعدة المعرفة
استرجاع الملفات
🧠
الذاكرة
مراجعة السجل
⏰
المهام المجدولة
جدولة Cron
🔌
تكامل MCP
اكتشاف الخوادم وتثبيتها
💰
مركز التكلفة
سجلات الاستخدام والنفقات
🎭
Buddy
المظهر وبيانات النمو

27 قناة مراسلة

لكل قناة من قنوات 27 محوّل مطابق. عيّن متغيرات بيئتها لتشغيلها، أو استبعدها وقت البناء.

المراسلة
Telegram
Discord
Slack
WhatsApp
Signal
Matrix
IRC
Line
Zalo
منصات الصين
WeChat
WeCom
DingTalk
Feishu
QQ
Yuanbao
التعاون والتواصل
Microsoft Teams
Google Chat
Mattermost
Facebook Messenger
Twitter/X
قنوات أخرى
Email
SMS
Webhook
Nostr
Claude
iMessage
الوصول عبر الجوال

27 قناة إجمالاً · كتالوج موحّد · تشغيل لكل قناة · تقليم وقت البناء

المنظومة

سوق الإضافات + سوق MCP + ثلاثة مصادر للمهارات + سوق القوالب = منظومة Liri قابلة للتركيب

🔌

سوق MCP

5 محوّلات مصادر في بحث واحد

GitHub
npm
السجل الرسمي
Smithery
خدمات مرفقة
🧩

سوق الإضافات

مصادر محلية وnpm وسجلات بعيدة

SDK للإضافات + محوّلات
دورة حياة وإعادة تحميل فورية
تحقق من التوقيع
نقاط إعداد + CLI
5 نسخ بناء
⚡

ثلاثة مصادر للمهارات

مدمجة ومستخدم وطرف ثالث — معزولة فعلياً

11 مهارة مدمجة
مهارات يحددها المستخدم
مصدر ClawHub لطرف ثالث
تنسيق مشروط
تركيب المهارات ومطابقتها
📚

القوالب والبروتوكولات

قوالب وكلاء ووثائق جاهزة للتوصيل

سوق قوالب الوكلاء
سوق قوالب الوثائق
MCP / ACP / A2A / LSP
إضافات ومهارات قابلة للتركيب
إعادة استخدام القوالب بمعاملات

أكثر من قائمة ميزات

ثلاثة أشياء يسهل تفويتها، لكنها تُستخدم كل يوم.

🐣

نظام شخصية Buddy

ليس أداة، بل رفيق: المظهر يُولَّد حتمياً من بذرة، فتبقى الشخصية نفسها بالشكل نفسه دائماً؛ وحالة النمو محفوظة وتتراكم عبر الجلسات.

18 نوع 8 قبعة 6 عين 5 درجة ندرة
🧾

تكلفة شفافة

الأسعار تُقرأ من قاعدة البيانات، والإسناد إلى اسم النموذج الحقيقي الذي يعيده المزود، وكل استدعاء يُكتب في cost_records؛ والميزانية تنبّه عند تجاوز الحد، ثم تضغط، ثم تمنع.

جدول أسعار model_registry usage حقيقي تسجيل لكل استدعاء ميزانية يومية
🎯

أربعة أنواع من المستخدمين

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

المطورون مسؤولو الأمن فرق التشغيل الجميع

القيود الحالية

ما لم يكتمل بعد في مرحلة التكرار السريع — نكتبه هنا حتى لا تكتشفه بنفسك.

الأمان بانتظار تدقيق خارجي

بانتظار تدقيق خارجي

طُبِّقت 5 طبقات دفاع و6 واجهات خلفية للعزل، وهناك 51 ملفاً متعلقاً بالعزل يمكنك مراجعته واحداً واحداً — لكن لم يكتمل أي تدقيق أمني من طرف ثالث.

تفاعلات سطح المكتب قيد الصقل

قيد الصقل

429 مكوّن TSX و32 صفحة جاهزة؛ ولا تزال الاختصارات والحركات والحالات الحدّية قيد الضبط.

كتالوج السوق لا يزال صغيراً

قيد البناء

سوق الإضافات وسوق MCP ومصادر المهارات تعمل من الطرف إلى الطرف، لكن الكتالوج القابل للتثبيت ما زال ينمو.

ابدأ الآن

ثلاث خطوات: تثبيت الاعتماديات → إعداد مفتاح API → تشغيل dev

1

تثبيت الاعتماديات

$ git clone https://github.com/cocosoft/Liri.git
$ cd Liri/app && bun install
2

إعداد مفتاح API

$ cp .env.example .env
$ # حرّر .env وأضف مفتاح API
3

تشغيل Liri

$ bun run dev

مفتوح المصدر · المجتمع

Liri مشروع مفتوح المصدر، ونرحّب بكل مساهم

GitHub

تابع المشروع على GitHub، وافتح Issue أو أرسل PR

github.com/cocosoft/liri

انضم إلى المجتمع

شارك في النقاش، وافتح Issue أو أرسل PR