عن المشروع

织流 Loom هو منصة عمل محلية لخطوط أنابيب الوكلاء، تهدف إلى حل مشاكل السلسلة الكاملة للمهام المعقدة مثل النمذجة الرياضية وتقارير البحث وكتابة المستندات الطويلة. يقسم المهام إلى عمليات متعددة الخطوات قابلة للتحرير، حيث يمكن ربط كل خطوة بمهارة (skill) واسم ملف الإخراج والدور (تنفيذ/مراجعة/تحرير) والمحرك والنموذج، مع دعم إعداد نقاط تفتيش للإيقاف المؤقت وانتظار التأكيد. الوظائف الأساسية تشمل: - **تنظيم العملية**: إضافة وحذف الخطوات بصريًا، وتكوين كل خطوة بمرونة. - **مكتبة المهارات**: إدارة مواصفات المطالبات لكل خطوة، مع دعم الإنشاء والتحرير والحفظ كنسخة، واستيراد حزم المهارات القياسية (zip / SKILL.md). - **التشغيل**: تنفيذ تدفقي فوري عبر SSE، مع عرض تدريجي لأدوات الاستدعاء والمخرجات في منطقة النسخ، وبطاقة حالة لكل خطوة في الزاوية العلوية اليمنى، ولوحة ملفات مساحة العمل تعرض الملفات التي يكتبها الوكيل في الوقت الفعلي (عرض فوري لـ markdown، ومعاينة مدمجة للصور/PDF). - **المراجعة الجزئية الحوارية**: عند عدم الرضا عن النتيجة، يمكن الإشارة إلى خطوة معينة وطلب تعديلها، لإعادة كتابة تلك الخطوة فقط دون إعادة تشغيل العملية بأكملها. - **استيراد/تصدير العملية**: عملية واحدة = ملف JSON واحد، قابل للمشاركة والنسخ الاحتياطي وإعادة الاستيراد. قاعدة صارمة: المحتوى الرئيسي يُنتج فقط بواسطة وكيل CLI المحلي. لا يتصل Loom نفسه مباشرة بأي واجهة نماذج كبيرة لتوليد المحتوى، وإعدادات API في الإعدادات تُستخدم فقط لحقن نقطة النهاية/المفتاح/النموذج في Claude Code أو Codex CLI. قبل الاستخدام، يجب تثبيت وتسجيل الدخول إلى أحدهما: Claude Code (أمر `claude` متاح) أو Codex CLI (أمر `codex` متاح). التشغيل من المصدر: ```bash pip install -r requirements.txt python run.py # http://127.0.0.1:8000 python run.py --port 8001 # تغيير المنفذ python run.py --auto-kill # تحرير المنفذ تلقائيًا إذا كان مشغولًا بعملية قديمة ``` اختبارات الانحدار (بدون حاجة للإنترنت): ```bash python -m pytest -q ``` هيكل الدليل: - `app/`: الخلفية FastAPI، تتضمن `main.py` (المسارات وجميع /api)، و`runner.py` (محرك تنفيذ العملية: نقاط التفتيش، تدفق أحداث SSE، مساحة العمل، المخرجات)، و`agents.py` (طبقة تكيف Claude / Codex CLI)، و`updater.py` (فحص التحديثات، تنزيل حزمة التثبيت، التحقق من sha256). - `static/`: الواجهة الأمامية (HTML/CSS/JS أصلي، بدون أطر عمل أو خطوات بناء). - `tests/`: اختبارات انحدار pytest، بما في ذلك اختبارات عقد الأصول الثابتة. - `loom_launch.py`: نقطة دخول النسخة المعبأة (نافذة pywebview أصلية، مع الرجوع إلى المتصفح عند الفشل). - `run.py`: نقطة دخول النسخة المصدرية. - `make_release.py`: PyInstaller onedir + Inno Setup → release/Loom-<الإصدار>-setup.exe. - `upload_cos.py`: رفع حزمة التثبيت وملف latest.json إلى Tencent Cloud COS. دليل البيانات: عند التشغيل من المصدر في `modex-data/`، وبعد التثبيت في `data/` بجانب exe (SQLite + مساحة العمل + المهارات المخصصة + الملفات المُصدَّرة). لا يتم استبداله عند الترقية، ولا يُحذف عند إلغاء التثبيت. التعبئة والنشر: ```bash python make_icon.py # مطلوب فقط إذا غيّرت الأيقونة python make_release.py --version 1.0.1 --notes "…" # إنتاج setup.exe + latest.json python upload_cos.py # رفع إلى COS (يتطلب ملف مفتاح محلي، غير مُدرج في المستودع) ``` حزمة التثبيت تحتوي فقط على التطبيق نفسه والتبعيات، ولا تتضمن `modex-data/` من جهاز التطوير (يوجد فحص صريح في `make_release.py`). الخصوصية: لا يوجد نظام حسابات خادم، ولا تتبع، ولا رفع لأي محتوى. تبقى العمليات والمطالبات والمخرجات كلها محليًا. الطلب الخارجي الوحيد هو قراءة قائمة الإصدارات عند فحص التحديثات، بالإضافة إلى تواصل وكيل CLI نفسه مع خدمة النماذج. التحميل: https://lxlrwxs.top/modelflow/ | يتطلب Windows 10/11 | يعمل محليًا بالكامل، بدون حساب أو تتبع.